【Python自动化运维之路Day4】
abs() 取绝对值
all() 所有为真,则为真,否则为假
any() 至少有一个为真,就为真,否则为假
callable() 判断函数是否可以被调用,如果可以返回True,否则返回False
bin() 将十进制数转换为二进制表示
hex() 将十进制的数值转换为十六进制
oct() 将十进制数值转换为8进制
chr() 和 ord()
chr 返回一个元素在ASCII表里对应的关系的字符串,如str(65)返回的是大写字母“A“ ,反查是 ord()
#随机生成一个6位验证码
import random
li=[]
for i in range():
r=random.randrange(,)
if r == or r==:
num=random.randrange(,)
li.append(str(num))
else:
n=random.randrange(,) #从65到90 之间随机取出一个数字
c=chr(n) #把数字转换成字母
li.append(c)
j="".join(li) #字符串拼接,只能拼接字符
bool() 返回给定元素的布尔值
divmod() 相除,返回商和余数,返回值是一个元组
globals() 获取所有的全局变量;
locals()获取所有局部变量
compile():将字符串编译成python代码
eval() 可以把括号里面的字符串当成python执行,但只支持表达式且有返回值;
exec() 执行,比eval要牛逼,因为exec可以执行任何Python代码,但eval只能执行表达式;但有个缺陷是eval有返回值,而exec没有。
exec可以执行compile编译过的,也可以接受代码执行。
eval() 执行,把接受的字符串当做一个表达式,把代码编译成一行的表达式;
isinstance(s,类型)用来判断对象是否是类的实例
issubclass
zip():合并多个list tulpe
三元运算
result = 值1 if 条件 else 值2
lambda
my_lambda = lambda arg : arg + 1
map 遍历序列,对序列中每个元素进行操作,最终获取新的序列
new_list = map(lambda a: a + 100, li)
new_list = map(lambda a, b: a + b, li, sl)
fiter:
li = [11, 22, 33]
new_list = filter(lambda arg: arg > 22, li)
二 装饰器
@+函数名
2个功能
1、自动执行out函数,并且将其下面的函数名当作参数执行
2、将out函数的返回值,重新赋值给下面的参数
def outer(func):
def inter(*args,**kwargs):
print("before")
r=func(*args,**kwargs)
print("hello")
return r
return inter
@outer
def f1(a):
print(a)
return "屌丝!" @outer
def f2(a1,a2):
print("F2",a1,a2)
return "臭屌丝!!!" test=f1(1111)
print(test) test2=f2(222,333)
print(test2) #结果
before
hello
屌丝! before
F2 222 333
hello
臭屌丝!!!
【Python自动化运维之路Day4】的更多相关文章
- python自动化运维之路~DAY4
python自动化运维之路~DAY4 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模块导入方式详解. 关于Python有几种导入模块的方式,请参考我的另外一篇博客(第20 ...
- python自动化运维之路~DAY5
python自动化运维之路~DAY5 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模块的分类 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数 ...
- 《Python自动化运维之路》 业务服务监控(二)
文件内容差异对比方法 使用diffie模块实现文件内容差异对比.dmib作为 Python的标准库模块,无需安装,作用是对比文本之间的差异,且支持输出可读性比较强的HTML文档,与 Linux下的di ...
- Python自动化运维之路-01
python的主要应用 python的擅长领域 学python有没有前途?python的语言排名 语言选择 运维会了开发后可以干什么? python的最大优势就是什么都能做. 课程概述 毕业目标 周五 ...
- 【Python自动化运维之路Day9】Socket
socket也可以认为是套接字是一种源IP地址和目的IP地址以及源端口号和目的端口号的组合.网络化的应用程序在开始任何通讯之前都必须要创建套接字.就像电话的插口一样,没有它就没办法通讯. socket ...
- 【Python自动化运维之路Day7】
1. configparser模块 import configparser config = configparser.ConfigParser() #先把config应用一下configparser ...
- 【Python自动化运维之路Day6】
1.递归思考题,阶乘 使用递归方式(函数)计算: 1*2*3*4*5*6*7*8*9*10的值 def func(num): if num==1: return 1 return num*func(n ...
- 【Python自动化运维之路Day2】
1. 常量命名规则 在Python中,会在变量命名上标明某变量是常量,通常采用全是大写的方式来标明,如: CONNECT= '127.0.0.1' PORT = ' 2.Python编译 python ...
- 《Python自动化运维之路》 系统基础信息模块(一)
系统性能收集模块Psutil 目录: 系统性能信息模块psutil 系统性能信息模块psutil psutil能够轻松实现获取系统运行的进程和系统利用率包括(CPU,内存,磁盘 和网络)等.主要用于系 ...
随机推荐
- Servlet的过滤器Filter
Servlet 编写过滤器 Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息. 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Serv ...
- RSA加密前端JS加密,后端asp.net解密,报异常
RSA加密前端JS加密,后端asp.net解密,报异常 参考引用:http://www.ohdave.com/rsa/的JS加密库 前端JS加密代码: function GetChangeStr() ...
- gcc相关
linux操作系统上面开发程序, 光有了gcc 是不行的 它还需要一个 build-essential软件包作用是提供编译程序必须软件包的列表信息 也就是说 编译程序有了这个软件包它才知道 头文件 ...
- jquery 删除数组元素
expertsId.splice($.inArray(thisID.split('&')[0],expertsId),1); 1. expertsId数组名2. thisID.split('& ...
- C语言课设心得分享(一)
今儿上完课设,老师果然讲的比较少,周四还不用去,看来还是学生自己折腾.我在做课设的过程中,攒了一些心得/体会,希望能和大家分享分享,也希望能一起探讨探讨.如果是我能回答的问题,我很乐意能够提供帮助. ...
- Python-内置类属性
Python内置类属性 __dict__ : 类的属性(包含一个字典,由类的数据属性组成) __doc__ :类的文档字符串 __name__: 类名 __module__: 类定义所在的模块(类的全 ...
- (八) 一起学 Unix 环境高级编程 (APUE) 之 信号
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- texstudio on ubuntu 12.04
从官网下载针对12.04的版本的texstudio: http://texstudio.sourceforge.net/ 安装deb包:sudo dpkg -i texstudio_xx.deb 运行 ...
- hdu 1573 X问题 (非互质的中国剩余定理)
X问题 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- ASP.NET ZERO 学习 JTable的使用子表闭合功能
双击子表自动判定开闭功能 //CHILD TABLE DEFINITION FOR "PHONE NUMBERS" Phones: { title: '', width: '5%' ...