包含下列内容的清单:
mylist = [3,7,8,9,2,4,6]
只是想把它的所有价值都变成真
mylist = [True,True,True,True,True,True,True]
我可以用for循环来做。
想要用节奏曲的方式做最好是一条船
发布于 2018-04-13 05:08:18
可以将lambda
与map
函数结合使用。
In [11]: mylist = [3,7,8,9,2,4,6]
#python 2.7
In [12]: mylist = map(lambda x: True,mylist)
#python 3.x
In [12]: mylist = list(map(lambda x: True,mylist))
In [13]: mylist
Out[13]: [True, True, True, True, True, True, True]
发布于 2018-04-13 05:08:48
mylist = [True for _ in mylist]
发布于 2018-04-13 05:11:48
有几种方法可以做到这一点(通过这种方式,我们更多地使用Perl-land而不是Python):
# List duplication
mylist = [True] * len(mylist)
# Comprehensions
mylist = [True for x in mylist]
# Fill with itertools
from itertools import repeat
mylist = repeat(True, len(mylist) - 1)
所有这些都将绑定到mylist
的给定列表替换为新的列表。如果要更改mylist
指向的列表,可以使用索引赋值:
# Assignment (mutates existing list)
mylist[:] = [True] * len(mylist)
https://stackoverflow.com/questions/49809657
复制相似问题