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)]