问题描述
我想将单词附加到列表中。如果我进行 for 循环,返回的答案是正确的。
但是,如果我使用列表理解方法,我会得到 None 的答案。我做错了什么?
x=[]
for i in range(0,10):
x.append('hi'+str(i))
print(x)
答案:['hi0','hi1','hi2','hi3','hi4','hi5','hi6','hi7','hi8','hi9']
x= [x.append('hi'+str(i)) for i in range(0,10)]
print(x)
答案:[None,None,None]
解决方法
您的 x = [x.append('hi'+str(i)) for i in range(0,10)]
,使用每个 x.append
调用的结果构建一个列表,即无,因为它是就地完成的,然后您用该新列表擦除 x
你想要
x = [f"hi{i}" for i in range(10)]