我如何将其转化为 Python 列表理解?
How Do I Turn This Into A Python List Comprehension?
我想让它更有效率,但我不知道如何将它变成 python 列表理解。
coupons = []
for source in sources:
for coupon in source:
if coupon.code_used not in coupons:
coupons.append(coupon.code_used)
used_codes = set(coupon.code_used for source in sources for coupon in source)
您无法访问当前创建的列表,但如果顺序不重要,您可以使用 set
:
coupons = set(coupon.code_used for source in sources for coupon in source)
我假设结果列表的顺序不重要,因为这样我们就可以使用集合来消除重复项。
coupons = list(set(coupon.code_used for source in sources for coupon in source))
这使用生成器表达式,其中 for
子句的出现顺序与嵌套循环中的出现顺序相同,以提取所有代码。 set
仅保留唯一代码,list
从集合中创建一个列表(任意排序)。
coupons = {x for x in (y.code_used for y in coupon for coupon in sources)}
你实际上是在寻找 set
我想让它更有效率,但我不知道如何将它变成 python 列表理解。
coupons = []
for source in sources:
for coupon in source:
if coupon.code_used not in coupons:
coupons.append(coupon.code_used)
used_codes = set(coupon.code_used for source in sources for coupon in source)
您无法访问当前创建的列表,但如果顺序不重要,您可以使用 set
:
coupons = set(coupon.code_used for source in sources for coupon in source)
我假设结果列表的顺序不重要,因为这样我们就可以使用集合来消除重复项。
coupons = list(set(coupon.code_used for source in sources for coupon in source))
这使用生成器表达式,其中 for
子句的出现顺序与嵌套循环中的出现顺序相同,以提取所有代码。 set
仅保留唯一代码,list
从集合中创建一个列表(任意排序)。
coupons = {x for x in (y.code_used for y in coupon for coupon in sources)}
你实际上是在寻找 set