python 列表、字典、集合解析

解析操作可以很方便地生成一個有規律的列表、字典、集合,區別於常規的定義,其內部可以嵌入一個或者多個forif子句。根據forif的計算結果返回一個列表。並且可以作爲從已知列表、集合、字典中篩選符合要求數據的工具(可以避免循環遍歷每個元素篩選,提高效率)。

示例代碼:

用於定義

a = [i * i for i in range(1, 10, 2)]
points = [(x, y) for x in [1, 2, 3] for y in [3, 1, 4] if x != y]

用於在列表、字典、集合中篩選數據

from random import randint


print(u"列表解析: ")
data = [randint(-10, 10) for i in range(10)]
print(data)
b = [x for x in data if x >= 0]
print(b)

print(u"字典解析: ")
my_dict = {x: randint(60, 100) for x in range(1, 21)}
print(my_dict)
res_dict2 = {k: v for k, v in my_dict.items() if v >= 90}
print(res_dict2)

print(u"集合解析: ")
my_set = set(data)
print(my_set)
res_set = {e for e in my_set if e <= 0}
print(res_set)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章