1. list 和 tuple 和 dict 各自特点
tuple 元祖 固定长度不可变的顺序容器,访问效率高,适合存储一些常量数据,可以作为字典的键使用 list 列表 是长度可变有序的数据存储容器,可以通过下标索引取到相应的数据 dict 字典 长度可变的hash字典容器,存储的方式为键值对,可以通过相应的键获取相应的值,key支持多种类型
2. ‘1,2,3’如何变成[‘1’,’2’,’3’] [‘1’,’2’,’3’]如何变成[1,2,3] ?
obj = "1,2,3".split(",") xx = [int(i) for i in obj]
3. def add_end(L=[]):
L.append(‘END’)
return L
add_end() 输出什么?
add_end() 再次调用输出什么?为什么?
['END'] ['END'] ['END'], 因为在第一次调用的时候L就已经生成,在内存中类似于全局变量,第二次调用的时候会在第一次调用的基础上进行添加(默认参数必须指向不变的对象)
4. [34,5,12,9,21]怎么排序
sorted()
5. def func(a,b,c = 0,*args,**kw):
pass
*args,**kw 的作用是什么?
*args接收位置参数,**kw接收关键字传参
6. 如何生成[1,4,9,16,25,36,64,81,100]尽量用一行实现
obj = [i**2 for i in range(11)]
7. 生成器是什么?有什么用?请写一个生成器
可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型需要调用自己内置的__iter__方法),所以生成器就是可迭代对象 def test(): print("one") yield 1
8. map(str,[1,2,3,4,5,6,7,8,9])输出什么
#map函数是对一个序列的每个项依次执行函数 输出是一个map对象 加上list() 会输出['1', '2', '3', '4', '5', '6', '7', '8', '9']
9. python 支持的数据类型有
Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionary(字典)
10. 请把一下函数转化成 python 的 lamabda 匿名函数:
def add(x,y):
return x+y
lamabda:x,y:x+y