pythonic——python化的语法

1.unpacking

  使用类似tuple的形式多项赋值,而不是逐项:

list1 = ['hello','world','python','java']
# h = list1[0]
# w = list1[1]
h,w = list1[:2]

 2. 使用join来代替字符串拼接生成新对象

colors = ['red', 'blue', 'green', 'yellow']
# result = '',for s in color,result += s
result = ''.join(colors) # 没有额外的内存分配

 3.使用 k in dict而不是k in dict.keys()

for key in my_dict:
# for key in my_dict.keys()
 my_dict[key] ...

  同样的,使用 in而不是has_key判断

if k in my_dict:
# if my_dict.has_key(k)
    my_dict[k]

4.使用列表推导式而不是循环

  

##不推荐
new_list = []
for item in a_list:
 if condition(item):
 new_list.append(fn(item)) 
##推荐
new_list = [fn(item) for item in a_list if condition(item)]

 

posted @ 2019-10-04 18:53  ---江北  阅读(236)  评论(0编辑  收藏  举报
TOP