Steven最近在考虑换工作,突然接到了平安的面试邀请,也没怎么特别的准备就跑过去面试了,结果聊了一个小时之后被无情刷掉,不过还是想把这次的一些考点放在这里供大家以后参考。btw:面试我的竟然是个妹子,刚开始进来的时候我还以为先是HR面,结果人家一开始问技术问题,肃然起敬。
先是问道:
1.Python里面的数据类型有哪些?
分析:其实这个问题并不难,除了基础的int/float/bool/字符串/None之外就是Python特有的字典/列表/元组/set 类型
2.然后面试官接着问:那么你能告诉我list和set的区别吗?
分析:这个问题问的比较细,因为平时没有用到set类型,所以当时回答不上来,事后我去网上查了一些,其实也很简单,list是有序的数组,可以有重复的数据,可以通过下标来访问,但是set是无序的,但是数据不允许重复,不可通过下标来访问,另外一点set语句执行效率更高。我们可以做一个测试:
python -m timeit -n 1000 "[x for x in range(1000) if x in range(500,1500)]"
输出结果如下:
可以清晰的看到:执行1000次循环足足花了18s的时间
<