【发布时间】:2020-08-15 03:04:00
【问题描述】:
我需要通过在列表中每个单词的末尾添加 d 或 ed 来使这些单词成为过去时,具体取决于单词是否以“e”结尾。我试图把它们放在第二个过去时词列表中。
我正在尝试使用我已经掌握的基本知识。这会在 .append 行引发错误,说列表索引必须是整数而不是字符串。我有点卡住了,有什么想法吗?
words = ["adopt", "bake", "beam", "confide", "grill", "plant", "time", "wave", "wish"]
past_tense = []
for i in words:
if i[-1] == 'e':
past_tense.append(words[i] + 'd')
else:
past_tense.append(words[i] + 'ed')
【问题讨论】:
-
您将自己与命名混淆了。将循环更改为
for word in words并从那里开始 -
i是一个词,而不是一个数字。你不能用字符串索引到列表中 -
这能回答你的问题吗? How to update strings in a list based on condition。根据您的问题调整代码应该相当容易。