记录一下自己遇到的Python小技巧或者自己不熟悉的功能。
- zip函数(Python3):zip()用于将函数中的参数按index对应,然后将每个index的各个元素组合成一个tuple,在python3中返回一个对象,可以使用list()转换成列表。zip(*)则是逆向操作,将二维tuple转成两个tuple。
注意:长短不一时取短的长度。
有点难理解,上例子:
>>> a=[1,2,3,4]
>>> b=[5,6,7]
>>> zip(a,b)
<zip object at 0x000002855123B708>
>>> list(zip(a,b))
[(1, 5), (2, 6), (3, 7)]
>>> li=list(zip(a,b))
>>> c,d=zip(*li)
>>> c
(1, 2, 3)
>>> d
(5, 6, 7)
2.逐行打印数字
方法一:在函数中内置print()
>>> i=1
>>> while i<5:
print(i)
i+=1
1
2
3
4
方法二:先生成一个list,然后从list打印。当你的代码一直使用list操作,但是最后输出又要每个元素一行的话需要这样操作,在各家公司笔试时可能会用到。
>>> L=[1,2,3,4,5]
>>> for i in L:
print(i)
1
2
3
4
5
- *号用法
在列表、元组、集合、字典及其他可迭代对象作为实参传入函数时,并在前面加*
如,解释器会将参数解包传入参数。如f=function(a,*b),b中的元素会被解包,挨个与a中的元素一一对应传入函数。
4.Python中的一些运算符
Python中的与或非用英文单词"and"、“or”、“not"表示,”&"、"|"、"^"表示按位运算,分别是按位与,按位或和按位异或。
>>> 2&4
0
>>> 2|4
6
>>> 2^4
6
2的二进制表示为010,4的二进制表示为100
与操作结果为000,即十进制0
或操作结果为110,即十进制6
异或操作结果为110,即十进制6