joh*_*nix 16 python iterable map-function
我想知道是否有办法在某些东西上运行地图.map的工作方式是它需要一个iterable并将一个函数应用于该iterable中的每个项目,从而生成一个列表.有没有办法让map修改可迭代对象本身?
Joh*_*ooy 12
如果需要修改列表,则切片分配通常是可以的
mylist[:] = map(func, mylist)
Run Code Online (Sandbox Code Playgroud)
您可以使用 lambda (或 def)或更好的列表理解(如果足够的话):
[ do_things_on_iterable for item in iterable ]
Run Code Online (Sandbox Code Playgroud)
无论如何,如果事情变得太复杂,您可能希望使用 for 循环更加明确。
例如,你可以做类似的事情,但恕我直言,它很丑陋:
[ mylist.__setitem__(i,thing) for i,thing in enumerate(mylist) ]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8533 次 |
| 最近记录: |