正常的列表理解以这种方式出现:
new_list = [f(x) for x in l]
Run Code Online (Sandbox Code Playgroud)
在Python中创建新列表的最简洁和可读方式是什么,类似于:
new_list = [f(x) while condition is True]
Run Code Online (Sandbox Code Playgroud)
Dun*_*can 12
把事情简单化:
new_list = []
while condition:
new_list.append(f(x))
Run Code Online (Sandbox Code Playgroud)
当将某些内容更明确地写为单独的语句时,将某些内容强制转换为单个表达式没有任何好处.
使用itertools:
import itertools as it
new_list = map(f, it.takewhile(condition, l))
Run Code Online (Sandbox Code Playgroud)
它是一样的
new_list = [f(x) for x in it.takewhile(lambda x: condition(x), l)]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12932 次 |
| 最近记录: |