Python:每日一题 创意题
今日题目:
我们只能写两行代码,来创建200个空列表,怎么办???
很急,在线等~
利用一个函数,so easy~
思考后回复:
**** Hidden Message ***** 一般性会把这200个空列表放在一起,用下标索引即可
emptylist = [[] for _ in range(200)] for x in range(200):
listx=[] chunchun2017 发表于 2017-9-25 22:27
你这个就创建了一个列表,前面的都被垃圾回收机制回收了 jerryxjr1220 发表于 2017-9-25 23:14
一般性会把这200个空列表放在一起,用下标索引即可
emptylist = ([] for _ in range(200))
我觉得这儿用生成器么样? bush牛 发表于 2017-9-26 08:45
emptylist = ([] for _ in range(200))
我觉得这儿用生成器么样?
生成器不支持下标索引,如果是用for枚举,那用生成器是没有问题的,如果需要索引还是列表比较方便,看使用场合。 这么复杂的东西都让你解释的如此清晰,真是太棒了。。。 chunchun2017 发表于 2017-9-25 22:27
你这只有一个列表吧。for循环迭代完成后,就剩list199[ ]这个列表了,其他没被使用的都被python回收机制回收了。 chunchun2017 发表于 2017-9-25 22:27
我小弟愚钝,不理解 python多少版本,能将 这样结合 变量的? 回复过啦
{:10_254:} 初学者也很急{:5_91:} 来学习学习 看看答案
names = locals()
for i in range(200): names['x%s'%i] = []
是不是这个意思,生成x0-x199共200个变量 gunjang 发表于 2017-9-27 13:16
names = locals()
for i in range(200): names['x%s'%i] = []
是不是这个意思,生成x0-x199共200个变量
最后有200个空列表可以使用就行 用一个函数还要两行?是不是导入了标准库
猜不到是什么,
不过一行的话不用推导式,用map是一样的
a = map(lambda x: [], range(200)) for i in range(200):
exec("list%s = []"%i) 想知道结果 看看