写博客的第二篇:
为什么要写这篇文章?因为这是作者所经历过的面试,一鼻子的灰,作者一直想找数据分析的工作,可只会简单的爬取,知道爬虫思路,当被问到基础的东西时,就突然一脸懵逼,咦?这个我好想用过啊!是怎么来着?也过于紧张,在面试的时候双脚抖得疼痛。以python的对象来说,大脑是对象,还是空白的那种。面试某公司,面试官让我买本书看看!深受打击,在面试的前一晚,作者复习爬虫到3点,之后就被基础的知识问傻了,人也傻了。写这篇文章,也在于激励自己,绝不放弃,也希望能给各位一些小经验,基础!基础!基础!
dict_a = {'a':'这是字典a','b':'这是字典b'}dict_b = {'c':'这是字典c','d':'这是字典d'}merge_dict = dict(List(dict_a.items())+List(dict_b.items()))print(merge_dict)#输出{'a':'这是字典a','b':'这是字典b','c':'这是字典c','d':'这是字典d'}
这里使用了items方法,何为items方法呢?Python 字典items() 函数以列表返回可遍历的(键, 值) 元组数组。这是网上解释,作者分解一下,请看!
dict_a = {'a':'这是字典a','b':'这是字典b'}c = dict_a.items()print(c)print(type(c))#输出dict_items([('a', '这是字典a'), ('b', '这是字典b')])#输出<class 'dict_items'>
对了!返回的不是列表,而是’dict_items’,而这里要合并需将’dict_items’转换为’List’。List(dict_a.items())+List(dict_b.items())就相当于两个列表合并,再转换为字典,相信你脑海已经有结果。
dict()合并字典dict_a = {'a':'这是字典a','b':'这是字典b'}dict_b = {'c':'这是字典c','d':'这是字典d'}merge_dict = dict(dict_a,**dict_b)print(merge_dict)#输出{'a': '这是字典a', 'b': '这是字典b', 'c': '这是字典c', 'd': '这是字典d'}
这是dict方法,dict()函数用于创建一个字典。用法可以自行上网搜一下。
列表列表合并相加List_a = ['a','b']List_b = ['c','d']merge_List = List_a+List_bprint(merge_List)#输出['a', 'b', 'c', 'd']
这个就简单的两个列表相加。
extend()方法合并List_a = ['a','b']List_b = ['c','d']List_a.extend(List_b)print(List_a)#输出['a', 'b', 'c', 'd']
extend()该方法没有返回值,但会在已存在的列表中添加新的列表内容。
列表字典转换列表转字典l1 = ['a','b']l2 = [1,2]z1 = zip(l1,l2)#这里方便理解分开写了z = dict(z1)print(z1)print(z)print(type(z1))'''输出<zip object at 0x0000028318EF40C8>{'a': 1, 'b': 2}<class 'zip'>'''
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
那为什么打印出print(z)是<zip object at 0x0000028318EF40C8>这个玩意呢?
再来看看
l1 = ['a','b']l2 = [1,2]z1 = List(zip(l1,l2))#这里方便理解分开写了print(z1)#输出[('a', 1), ('b', 2)]
zip()函数打印出来的就是这样,再加个 dict(z1)也就转换为字典了。
@L_301_40@字典转列表dict_1 = {'a': 1, 'b': 2}a = List(dict_1.keys())b = List(dict_1.values())print(a)print(b)'''输出['a', 'b'][1, 2]'''
字典就是键值对,分别取出字典的键和值转换为列表就行了。
切片使用题目输入字符串’123456789’,想提取出2468,13579。
解答一s = '123456789'return_s = s[0:10:2]print(return_s)return_s1 = s[1:10:2]print(return_s1)#输出13579#输出2468
这是切片的使用,start : end : step
其实位置:start
末尾位置:end
步长:step
s = '123456789'a = []b = []for i in range(len(s)): if int(s[i])%2 ==0: a.append(s[i]) else: b.append(s[i])print(a)print(b)#a输出['2', '4', '6', '8']#b输出['1', '3', '5', '7', '9']
这里采用了余数的计算方法,当然和切片使用没有关系,只是根据题目而言,这里这是做简单的 *** 作。
装饰器装饰器概念及用途装饰器本质上还是函数,可以让其他函数在不做任何代码修改的前提下增加额外功能,它通常用于切面需求,例如:插入日志、性能测试、权限校验等。
写一个装饰器(题目)def f2(func): def f1(): return func()+1 return f1@f2def func(): print('func()函数') return 1print(func())'''输出func()函数2'''
通过@符号和装饰器名实现装饰器函数与被装饰器函数联系。再说一遍,‘让其他函数在不做任何代码修改的前提下增加额外功能’。
不要装饰器,代码是这样的 总结
以上是内存溢出为你收集整理的python基础面试题全部内容,希望文章能够帮你解决python基础面试题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)