str类型:
1.eval:将字符串的代码执行,并返回结果 用于值计算 有返回值(尽量少用,危险)
print(eval('1+2+3+4'))###10
2.exec:将字符串的代码执行 没有返回值 用于流程性代码的执行 if for。。。。
print(exec("1+2+3+4"))###None exec("print('hello,world')")###hello world
数字类型:
1. abs(绝对值)
print(abs(-1)) #####1
2. divmod()取商余
print(10,3)##3,3
3. round()保留几位小数
print(round(2.4344343,2))##2.43
4. pow() 几的几次方 幂运算,3个参数就是幂运算后取余几
print(pow(3,2))##9 print(pow(3,2,3)) ##0
5. sum() 接受一个可迭代对象,求参数加起来的和
print(sum([1,2,3,4,4],4))##18
6. min()加key之后 就要先算key,取最小值
print(min([1,3,4,0,9]))##1 print(min([-9,1,4,5],key=abs))##1
7. max()可加key,就先算key,取最大值
print(max(-1,9,23,45,key=abs))
数据集合:
1. enumerate()默认从0 开始
l = ['笔记本','phone','apple'] for i ,j in enumerate(l,1): print(i,j) #1 笔记本 # 2 phone #3 apple
2. zip() 是拉链函数,以最短的为准,取每个值
print(list(zip([1,2,3,4,],[5,6,7,8],['a','b']))) ##[(1, 5, 'a'), (2, 6, 'b')]
3. filter()后面加函数名,和可迭代对象,过滤函数 返回一个迭代器,新的内容少于等于的时候,才能用filter,
做筛选的,不会改变原来的值
def func(x): #传一个值 if x >10:#遍历每个值和10比较 return True#对的就返回 ret = filter(func,[1,3,34,15,8])# print(list(ret))#[(1, 5, 'a'), (2, 6, 'b')]
4. map()后面加函数名,和可迭代对象,返回一个迭代器,新内容的个数等于原内容的个数 ,
结果不一定是原来可迭代对象的项
ret = map(abs,[-1,-5,-6,7]) print(list(ret))#[1, 5, 6, 7] def func(x): return x*x ret = map(func,[1,2,3,4,5]) print(list(ret))##[1, 4, 9, 16, 25]
5. sorted()排序是生成一个新的列表,不改变原来的列表可加key
print(sorted([1,8,4,2,9]))#[1, 2, 4, 8, 9] print(sorted([-5,3,-2,1],key=abs))#[1, -2, 3, -5] li = ['alex',(1,2),'1,54,3,56'] print(sorted(li,key=len)) #[(1, 2), 'alex', '1,54,3,56'] #按元素的长度排序
6.len() 求值的长度
li = [1,2,4,5,6,7,] print(len(li))
序列
1. reversed() 返回一个迭代器, 不改变原来的列表,生成一个新的序列迭代器
li = [1,2,5,6,3,8] l = reversed(li) print(next(l)) print(list(l))
2. reverse() 返回None 是在原本的列表的基础上修改的
slice()切片 和切片一样 拿到一个新的list,,slice(1,5,2) == l[1:5:2] (是个语法糖)
li = [1,2,5,6,3,8] lit = slice(1,5,2) print(li[lit])