例如,我想获得list[0] = 100
。
l = [9, 2, 5]
#I want to get [100, 2, 5]
我编写了这段代码,但它不起作用(发生错误)。
l = [9, 2, 5]
output = (lambda x: x[0]=100)(mylist[:])
#I want to get [100, 2, 5]
请任何Pythonic方式。
感谢。
答案 0 :(得分:6)
如何简单地
output = [100] + l[1:]
这可以对任何索引i
进行推广,如下所示:
output = l[:i] + [100] + l[i+1:]
答案 1 :(得分:5)
copy_list = l[:]
copy_list[0] = 100
print copy_list # [100, 2, 5]
答案 2 :(得分:1)
要完全回答你的问题,你需要的是一种类似这样的功能:
def modifylist(original, index, value):
return original[:i] + [value] + original[i+1:]
示例(来自问题):
l = [9, 2, 5]
output = modifylist(l, 0, 100)
print(output)
输出... 的
>>> [100, 2, 5]
答案 3 :(得分:1)
L = [9, 2, 5]
output = [100 if i == 0 else x for i, x in enumerate(L)]