listToPrint = ['pots', 'pans', 'utensils', 'plates', 'cups', 'glasses']
while True:
newWord = input("Enter a word to add to the list (press return to stop adding words) > ")
if newWord == "0":
break
else:
listToPrint.append(newWord)
答案 0 :(得分:1)
我想,你想构建一个带有复合主题(单数主题的结合)的句子,比如" Sam,Bert和I"
让我们说,用户只输入了" dish" 这个词。
然后,我们可以使用以下方法(使用list.insert()
方法)简单地构造最终句子:
listToPrint = ['pots', 'pans', 'utensils', 'plates', 'cups', 'glasses']
while True:
newWord = input("Enter a word to add to the list (press '0' to stop adding words) > ")
if newWord == "0":
break
else:
listToPrint.append(newWord)
listToPrint.insert(-1, 'and') # inserts next to last element value
print(', '.join(listToPrint[:-2]) +' '+ ' '.join(listToPrint[-2:]))
输出:
pots, pans, utensils, plates, cups, glasses and dishes
答案 1 :(得分:0)
您只需要在循环列表时检查当前项目是否是最后一项。
如果是,请添加
" and " + [current item]
如果没有,请添加
", " + [current item]
(在第一项上跳过逗号)
答案 2 :(得分:0)
如果愿意的话,点击[-1]
将从列表中选择最后一个成员,或从后面选择第一个成员。
另外,如果你想要一个空字符串来摆脱循环,你可以像我一样。
空字符串返回False
。
listToPrint = ['pots', 'pans', 'utensils', 'plates', 'cups', 'glasses']
while True:
newWord = input("Enter a word to add to the list (press return to stop adding words) > ")
if not newWord:
listToPrint[-1] = 'and ' + listToPrint[-1]
break
else:
listToPrint.append(newWord)