**内建函数**
1.通过使用dir()函数可以列出所具备的方法
例:num = 10
dir(num)
例:myList = [1,2,3,4,5,6]
dir(num)
2.通过使用help()函数可以调取某个方法的api帮助文档
例:help(sorted)
3.zip()函数可以把两个序列压缩成一个新的元组对象,选取两个序列最短长度为结尾
例:mylist = [1,2,3,4,5]
mylist1 = ['a','b','c']
for var in zip(mylist,mylist1):
print(var)
返回新的元组(1,‘a')(2,'b')(3,'c')
因为mylist1长度只有3位,所有新的元组对象只返回的长度是3
3.map()函数的第一个参数可以接收一个函数(这个函数名不代()),第二个参数接收要操作的序列
返回第一个参数作用在第二个参数后的对象
例:def func(x):
return x*x
mylist = [1,2,3]
map(func,mylist)
4.reduce()函数在py3中已经不是内建函数需要自行导入 from functools import reduce
这个函数可以把序列中两个参数同时取出来并进行行计算,直到最后一个参数结束
例:def func(x,y):
return x*y
mylist = [1,2,3]
reduce(func,mylist)
返回结果为1*2*3=6
reduce()和map()的区别 map只能操作一个参数的运算,reduce可以进行两个参数运算的叠加
**推导式**
1.列表推导式
[表达式 for value in 序列 if过滤条件] 返回一个新的序列 if过滤条件可有可无
例:mylist=[1,2,3,4,5]
new_list = [var*var for var in mylist]
new_list1 = [var*var for var in mylist if var==2] 加入过滤条件
print(new_list)
2.元组推导式
(表达式 for value in 序列 if过滤条件)返回一个生成器
可以通过新的序列.__next__()方法取出
3.字典推导式
{key:value for key in 序列 if过滤条件}需要两个值存在来维护字典的键值对形式
一个作为key,一个作为value 然后拼接成一个字典
例:mylist=[1,2,3,4]
mydict={var:'a' for var in mylist}
print(mydict)
4.集合推导式
{表达式 for value in 序列 if过滤条件}集合中会把重复的元素去除
例:mylist=[1,2,2,3,4]
mydict = {var*10 for var in mylist }
print(mydict)
**疑问**
字符串、列表、元组、字典之间的相互转换怎么运用?