- 博客(27)
- 收藏
- 关注
原创 小菜鸟的python进阶之路 ------- 带参数的装饰器
昨天,我们简单了解了装饰器,那么你了解装饰器带参数是怎样的吗??下面,我们用一个简单的例子来了解一下带参数的装饰器""" 编写装饰器required_types, 条件如下:# 1). 当装饰器为@required_types(int,float)确保函数接收到的每一个参数都是int或者float类型;# 2). 当装饰器为@required_types(lis...
2019-01-22 22:43:30 199
原创 小菜鸟的python进阶之路 ------- 多个装饰器的执行顺序
装饰器可以在不改变源函数的基础上增加函数功能,那么如果一个函数由多个装饰器的装饰,执行的是顺序应该是怎样的??这个问题一直困扰了我很久,终于。。。下面我们先用一个简单的例子验证一下def one(func): print('----1----') def two(): print('----2----') func() return...
2019-01-22 22:26:27 234
原创 小菜鸟的python进阶之路 ------- 装饰器
装饰器一般而言,我们要想拓展原来函数代码,最直接的办法就是侵入代码里面修改,如果我们不能进入代码中修改代码,我们该怎样办呢??这个时候,python的装饰器就给了我们很大的启发。那么,装饰器可以给我们提供什么好用的功能呢??功能:简言之,python装饰器就是用于拓展原来函数功能的一种函数,这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数...
2019-01-21 22:47:50 185
原创 小菜鸟的python进阶之路 ------- 匿名函数
匿名函数1.特点:匿名函数的关键字是lambda,冒号前面是形参,冒号后面是返回值练习1:求1+2+3+4+5from functools import reducedef add(x,y): return x+yprint(reduce(lambda x,y:x+y,[1,2,3,4,5])) 练习2:求0-5的平方print(list(map(l...
2019-01-21 22:31:38 260
原创 小菜鸟的python进阶之路 ------- 一道关于排序的携程笔试题
(2018-携程-春招题)题目需求:给定一个整形数组, 将数组中所有的0移动到末尾, 非0项保持不变;在原始数组上进行移动操作, 勿创建新的数组; 输入: 第一行是数组长度, 后续每一行是数组的一条记录; 4 0 7 0 2输出: 调整后数组的内容; 4 7 2 0 0def move_...
2019-01-21 22:11:05 266
原创 小菜鸟的python进阶之路 ------- sorted函数和sort函数
在Python中提供了两个方法可以的对给定的列表进行排序,有两种方法:方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本方法2.用built-in函数sorted进行排序,返回副本,原始输入不变示例:li = [5,3,2,4]第一种sort方法:li.sort(reverse=True)print(li)第二种sorted函数:a=sort...
2019-01-21 21:38:26 891
原创 小菜鸟的python进阶之路 ------- 生成式
生成式 集合生成式 列表生成式 字典生成式 1.集合生成式格式:{ expression for i in 序列 if 条件 } 作用:生成一个集合示例:print({i ** 2 for i in {1,2,3,3}})print({i ** 2 for i in {1,2,3,9,12,9} if i % 3 == 0 })2.列...
2019-01-20 09:02:41 203
原创 小菜鸟的python进阶之路 ------- 高阶函数
高阶函数高阶函数 python中的内置高阶函数 1.高阶函数特点: 实参是一个函数 函数的返回值也是一个函数示例:abs() #求绝对值的函数f = abs #函数本身可以赋值给变量,变量也可以指向函数def fun(x,y,f): #传递的参数包括函数名 return f(x),f(y) #返回值是函数...
2019-01-19 23:47:58 299
原创 小菜鸟的python进阶之路 ------- 一道腾讯笔试题
题目如下:""" (2018-腾讯-在线编程题)- 题目描述:给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输入值小于1000。如,输入为10, 程序应该输出结果为2。(共有两对质数的和为10,分别为(5,5),(3,7))# [2,3,5,7]- 输入描述:输入包括一个整数n,(3 ≤ n < 1000)- 输出描述:输出对数-...
2019-01-19 23:21:39 272
原创 pycharm中,代码下边有“波浪线”要怎么解决??
今天,在做练习的时候,打开pycharm,发现“代码下有‘波浪线’”(如下图所示),虽然并影响代码的运行,但是实在是不美观,要怎样才能将这个“波浪线”去掉呢?? 哈哈,其实很简单,关于pycharm的设置大都在“file--settinng”中进行设置我们找到"setting"下的"Inspections",将我们创建的项目(在这里我创建的是Pyrhon项目)后边置空即可 ...
2019-01-19 23:15:14 43014 6
原创 小菜鸟的python进阶之路 ------- 打印四种形状的9*9乘法表
打印9*9乘法表第一种:for i in range(1,10): for j in range(1,i+1): print("%d*%d=%d\t"%(j,i,i*j),end='') print() 第二种: i = 9while i > 0: j = 1 while j <= i: ...
2019-01-19 22:03:49 490
原创 小菜鸟的python进阶之路 ------- 字典
字典定义字典 字典的特性 字典的增、删、改、查 1..定义字典字典是一个无序的数据集合,输出字典时,定义的顺序和输出的顺序不一致 s = {}定义字典:key-value:value可以是任意类型>>> dict = {'1':'hello','2':'word'}工厂函数定义字典d = dict() ##定义空字典print(d)字典...
2019-01-17 17:06:40 598
原创 小菜鸟的python进阶之路 ------- 字符串
字符串定义方法 字符串的特性 字符串的类型判断(可以补全) 字符串开头和结尾的判断 字符串的操作 1.定义方式a = 'hello'b = 'what\'s up'c = "what's up"2.字符串的特性索引 切片 重复 连接 成员操作符 迭代(1)索引s = 'hello'print(s[0])print(s[1])(2)切片...
2019-01-17 14:27:33 717
原创 小菜鸟的python进阶之路 ------- for循环和while循环练习
一、for循环for循环的语法 break,continue,exit()1.for循环的语法for 循环使用的语法 for 变量 in range(10): 循环需要执行的代码rangerange(start,stop,step):start-stop-1,步长step2.break,continue,exit()的区别break:跳出循环...
2019-01-17 11:36:03 717
原创 小菜鸟的python进阶之路 ------- for循环打印四种形式的星星
打印四个角的星星1.***************i = 1while i <= 5: j = 1 while j <= i: print("*",end='') j += 1 print() i += 12. ***************i = 5while i &...
2019-01-17 11:35:59 1414
原创 小菜鸟的python进阶之路 ------- 变量和数据类型
一、数据类型int str float bool1. int:表示一个整形In [3]: age = 18In [4]: ageOut[4]: 182.str:表示一个字符串类型In [1]: name = '彭于晏'In [2]: nameOut[2]: '彭于晏'3.float:表示一个浮点型In [7]: height = 180.5...
2019-01-17 10:46:31 211
原创 小菜鸟的python进阶之路 ------- python3的特点(格式,注释,输入输出,内置函数)
python特点格式 注释 输入输出 内置函数 1.格式1.python3可以识别汉字,代码中不用添加_*_coding:utf-8_*_2.语句后没有分号3.严格按照缩进的语言2.注释单行注释#print('hello world') 多行注释"""print('hello westos')print('hi')""" 3....
2019-01-17 10:28:32 363
原创 Linux RedHat7.2下安装pycharm
Linux RedHat7.2下pycharm的安装与设置实验环境:Linux RedHat7.2系统 pycharm-community-2018.2.2.tar.gz安装包 安装步骤:第一步:下载pycharm-community-2018.2.2.tar.gz安装包(我的是从老师那儿拷贝过来的,在此不多说)解压安装包到/usr/local目录下[root@loca...
2019-01-14 17:29:36 1589
原创 Linux redhat7.0 源码编译安装python3.6
Linux redhat7.2下源码编译安装python3.6RedHat7.2中默认的python版本是python2.7,我们此次安装的是python3.6安装环境:Linux RedHat7.2系统 python3.6的安装包安装步骤:下载python3.6安装包 编译安装 ./configure make && make install 添加pyt...
2019-01-14 16:38:05 782
原创 Linux常用信号与信号捕捉(trap命令)
linux通过信号来在运行在系统的进程之间通信,也可以通过信号来控制shell脚本的运行1.常用信号等级 1 ##进程重新加载配置 2 ##删除进程在内存中的数据 3 ##删除鼠标在内存中的数据 9 ##强行结束单个进程(不能被阻塞) 15 ##正常关闭进程(可能会被阻塞) 18 ...
2019-01-11 14:53:04 797
原创 自动化运维之redhat7.0下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统
一.概述1、关于PXEPreboot Execution Environment翻译过来就是预启动执行环境;简称PXE;传统安装操作系统的方法是CDROM或U盘引导,而PXE技术解决的是从网络引导安装系统。pxe是一种基于客户端/服务器模式的一种技术,其核心功能时让客户端通过网络从远程服务器下载启动镜像,从而实现网络启动。通用的无人值守做法如下:通过一台没有系统的裸机网卡支持pxe协...
2019-01-10 20:12:14 1108 1
原创 shell脚本 ----- nginx自动化脚本
这个脚本可以实现niginx服务的开启,关闭和重启#!/bin/bash. /etc/init.d/functionsfunction usage() { echo $"usage:$0 {start|stop|restart}" exit 1}function start() { /usr/local/nginx/sbin/nginx sle...
2019-01-10 11:48:46 342
原创 shell脚本 ---- rsync自动化脚本
这个脚本可以实现rsync的开启,关闭,重启#!/bin/bash. /etc/init.d/functionsfunction usage() { echo $"usage:$0 {start|stop|restart}" exit 1}function start() { rsync --daemon sleep 1 if [ `ne...
2019-01-10 11:46:31 426
原创 RedHat6.5安装Niginx
一.Nginx简介Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。 二.nginx的安装准备工作系统平台:RedHat6.5...
2019-01-10 10:58:32 1504
原创 shell编程 ----- 随机数
1.两种产生随机数的方法第一种:RAMDOM 0-32767[root@localhost Desktop]# echo $RANDOM22565[root@localhost Desktop]# echo $RANDOM29222[root@localhost Desktop]# echo $RANDOM16112第二种:openssl rand -base6...
2019-01-07 15:30:54 513
原创 shell编程练习(二)
练习1.在/var/log/secure查找连接失败的主机,并统计次数,累计连接失败超过3次,将此主机加入系统黑名单(/etc/hosts.deny) #!/bin/bashcat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort |uniq -c |awk '{print $2"="$1}' >/tmp/black...
2019-01-07 14:42:03 425
原创 shell编程 ---- 数组
1.数组定义方法方法1:[root@localhost ~]# array=(1 2 3)[root@localhost ~]# echo ${array[*]}1 2 3方法2:[root@localhost ~]# array=([1]=one [2]=two [3]=three)[root@localhost ~]# echo ${array[*]}one t...
2019-01-07 14:41:21 210
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人