eval 剥去字符串的外衣,运算里面的代码 有返回值
s1 = '1+3'
print(s1) #'1+3'
s2 = '{"name":"alex"}'
print(eval(s1)) #4
print(eval(s2)) #{"name":"alex"}
eval 比较危险 容易执行危险代码 ...
网络传输的str,input,sql注入时 不要使用 eval
exec 与eval几乎一样 ,代码流 (同eval 尽量不要使用)
msg = """
for i in range(10):
print(i)
"""
exec(msg) #直接运行字符串内代码
hash 获取一个对象 的哈希值 (可哈希 对象:int,str ,bool ,tuple)
help 打印这个对象的使用说明
callable 判断 一个 对象 是否可调用 返回bool值
int 取整 转换为int 类型
complex 复数 转换为 complex 类型
bin 将十进制 转换为 二进制 并返回
oct 将十进制 转换成八进制 并返回
hex 将 十进制 转换为 十六进制 并返回
divmod #求出 商 余数
print(divmod(10,3))
# (3,1) 商 3 余 1
round 保留浮点数的小数位数
print(round(3.1415926535,2))
#3.14
pow 幂运算
pow(2,3) #2**3
pow(2,3,3) #2**3 %3
bytes 编码转换
s1 = '熊猫'
b = s1.encode('utf-8') #功能相同
b = bytes(s1,encoding = 'utf-8') #功能相同
ord 输入字符 找该字符 编码的位置
ord('a') #ASCLL :97
chr 输入位置数字 找出其对应的字符
print(chr(97)) #a
chr('中') #TypeError
chr(20013) #Unicode '中'
repr 返回一个对象的string 形式 (”原形毕露i“)
s1 = '熊猫'
print(s1) #熊猫
print(repr(s1)) #'熊猫'
#%r 在格式化输出时 也可以表示
all 可迭代对象中 ,全都是True 才是 True
l1 = [1,2,'12',True,'']
all(l1) #False
any 可迭代对象中 ,有一个是True 就返回 True
print(1,2,3,sep='|')
#1|2|3 (设置分隔符)
print(1,end='.')
print(2)
#1.2 (设置换行符)
list
l1 = [1,2,3,4]
l2 = list('abcd') #l2 = [a,b,c,d]
dict
dic = dict([(1,'one'),(2,'two')]) #{1:'one',2:'two'}
dic = dict(one=1,two=2) #{1:'one',2:'two'}
dict.fromkeys
dict.update
abs 绝对值
sum 求和
l1 = [i for i in range(10)]
sum(l1,100) #表示起始值100 145
reversed 返回反转的迭代器 不改变原对象
li = [i for i in range(10)]
obj = reversed(l1)
#obj = iterator
zip 拉链方法
l1 = [1,2,3,4,5]
tu1 = ('panda','popcart','lalala')
s1 = 'abcd'
obj = zip(l1,tu1,s1)
#type(obj) zip object
for i in obj:
print i
# (1,'panda','a')
# (2,'popcart','b')
# (3,'lalala','c')
min ,max
求 最小值 最大值
l1 = [1,2,-3,4,-5,-7,-6,7]
min(l1,key)
#求出列表中 所有绝对值的 最小值 :
min(l1,key = lambda x : abs(x))
#求一个字典的 最大值,最小值 (按值取)
dic = dict(a=1,b=5,c=3)
# {'a': 1, 'b': 5, 'c': 3}
print(max(dic,key=lambda d : dic[d]))
# b
filter 列表推导式的筛选模式
l1 = [2,3,4,1,6,7,8]
filter(lambda x:x >3,l1) #返回迭代器
#[4, 6, 7, 8]
map 列表推导式的循环模式
l1 = [1,4,9,16,25]
print([i**2 for i in range(1,6)])
ret = map(lambda x:x**2,[1,2,3,4,5]) #返回迭代器 ->list转换后 [1,4,9,16,25]
原文:https://www.cnblogs.com/pandaa/p/12053271.html