尝试从列表中删除变量时,remove()返回None

2024-05-23 20:07:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个程序的一部分,把一个陈述变成一个问题

当我试图删除x时,它返回None。我想让它在删除该项目的情况下打印句子,我做错了什么

def Ask(Question):
    Auxiliary = ("will", "might", "would", "do", "were", "are", "did")
    for x in Auxiliary:
        if x in Question:
            Question_l = Question.lower()
            Question_tk_l = word_tokenize(Question)
            Aux_Rem = Question_tk_l.remove(x)
            print (Aux_Rem)

所需行为示例:

"what we are doing in the woods"

应该成为

"what we doing in the woods"

我想删除问题中的任何助词


Tags: thein程序目的nonewhataretk
2条回答

somelist.remove(x)somelist中删除它找到的第一个等于x的元素。它不会返回修改后的列表。要打印修改后的列表,只需打印列表即可

print(Question_tk_l)

如果你想把它变成一个漂亮的字符串,你应该用空格连接它

print(' '.join(Question_tk_l))

这是正确的行为remove删除该元素并且不返回值(即返回None)。如果希望访问删除的元素,可以使用pop

相关问题 更多 >