我是Python的新手,并且在语法上苦苦挣扎,以将新值添加到列表中,然后将其添加到列表中。 AWS.config.update({
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
region: proccess.env.AWS_REGION
});
和loc_ref
都是预先存在的列表,from_loc
是使用user_says
user_says = input("Enter Data")
为什么print(loc_ref,"\n") #returns [['COMPANY|ADDRESS|CITY|STATE|LOCATION']]
print(from_loc,"\n") #returns ['COMPANY A', '1515 STREET RD', 'CITYA', 'ST']
print([user_says])
loc_ref = loc_ref.append(from_loc + [user_says])
print(loc_ref) #returns None
返回loc_ref
?
答案 0 :(得分:2)
这是因为方法append
返回None
。听起来怪怪的?这是因为它可以in-place
工作并更改列表loc_ref
,但是将始终返回None
。
您所要做的只是将行更改为:
loc_ref.append(from_loc + [user_says])
原始列表的末尾位置只是带有附加值。
详细了解here:
append()方法将单个项目添加到现有列表中。它不返回新列表;而是修改了原始列表。
答案 1 :(得分:2)
您正在将loc_ref
的值设置为None
loc_ref = loc_ref.append(from_loc + [user_says])
list.append
不返回带有附加值的列表,而是返回None
,结果loc_ref
设置为None
尝试:
loc_ref.append(from_loc + [user_says])
并摆脱loc_ref =
答案 2 :(得分:1)
https://www.programiz.com/python-programming/methods/list/append
如前所述,append()方法仅修改原始列表。它不返回任何值。
append()是一种仅返回"/"
就不会返回任何内容的方法