天天看點

Python推導式用法

推導式comprehensions, 可以快速,簡單的依據一個資料序列變換到一個新的資料序列

  • list

[表達式 for 變量 in 清單]    或者  [表達式 for 變量 in 清單 if 條件]

list1 = [0.2123, 0.1, 0.5, 0.6,0.5,0.8]

list2 = map(lambda x:1/x,list1)  //lambda 方式得到list1 元素的倒數

list3 = [1/x for x in list1]  // 推導式看起來更加簡單

multiples = [i for i in range(30) if i % 3 is 0]      
  • dict
test = {'testone': 10, 'testtwo': 34}
test_frequency = {v: k for k, v in test.items()}      
  • set

它跟清單推導式也是類似的。 唯一的差別在于它使用大括号{}。

strings = ['a','is','with','if','file','exception']
print({len(s) for s in strings})  //相同長度的要一個