python小技巧
程序员文章站
2024-03-26 12:45:47
...
能调用方法的一定是对象。
li = [1,2,3]
li.append('2')
'acv'.capitalize()
技巧#1
字符串翻转
a = 'codementor'
print 'Reverse is',a[::-1]
(Reverse is rotnemedoc)
技巧#2
矩阵转置
mat = [[1,2,3],[4,5,6]]
zip(*mat)
自己喜欢的一种写法:
1.
def trans(m):
a = [[] for i in m[0]]#mark 学习这种写法
for i in m:
for j in range(len(i)):
a[j].append(i[j])
return a
m = [[1, 2,3], [3, 4], [5, 6]]
print trans(m)
2.
def trans(m):
d = dict(m)
return [d.keys(), d.values()]
技巧#3
a = [1,2,3]
将列表中的三个元素拆分成三个变量:
a = [1,2,3]
x,y,z = a
技巧#4
a = ['Code','mentor','Python','Developer']
将字符串列表拼接成一个字符串
print ' '.join(a)
Python中有join()和os.path.join()两个函数,具体作用如下:
join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
os.path.join(): 将多个路径组合后返回
技巧#5
List1 = ['a','b','c','d']
List2 = ['p','q','r','s']
编写Python代码,实现下面的输出:
ap
bq
cr
ds
for x,y in zip(List1,List2):
print x,y
python中zip()函数的用法
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。
技巧#6
仅用一行代码实现两个变量的交换
a = 7
b = 5
b,a = a,b
技巧#7
不适用循环,输出‘codecodecodecodementormentormentormentormentor'
print 4*'code'+5*'mentor'
技巧#8
a = [[1,2],[3,4],[5,6]]
不适用循环,将其转变成单个列表
输出:[1,2,3,4,5,6]
a = [[1, 2], [3, 4], [5, 6]]
print list(itertools.chain.from_iterable(a))
上一篇: 引入其他公共模块无法注入Bean
下一篇: GAN