2024-09-28 17:31:31 发布
网友
有没有任何方法可以使用任何函数返回一个变量?你知道吗
不使用任何:
for punctuation in punctuations_list: if punctuation in utterance: print (punctuation)
任何(由于标点符号未初始化而出现错误):
if any(punctuation in utterance for punctuation in punctuations_list): print (punctuation)
不,any()只产生True或False。如果需要匹配元素,不要使用any(),而是使用filter(就像使用for循环一样)。你知道吗
any()
True
False
for
您可以先使用列表进行筛选:
matching = [p for p in puntuations_list if p in utterance] if matching: # print all matching punctuation on separate lines print(*matching, sep='\n')
或者,如果只需要第一个匹配元素,请使用^{} function和生成器表达式:
matching = next((p for p in puntuations_list if p in utterance), None) if matching is not None: print(matching)
如果生成器表达式不产生任何值,则返回next()的第二个参数;因此这里None表示没有匹配的标点符号(因此any()将返回False)。你知道吗
next()
None
不,any()只能返回True或False,如果需要变量,请使用filter()
filter()
不,
any()
只产生True
或False
。如果需要匹配元素,不要使用any()
,而是使用filter(就像使用for
循环一样)。你知道吗您可以先使用列表进行筛选:
或者,如果只需要第一个匹配元素,请使用^{} function 和生成器表达式:
如果生成器表达式不产生任何值,则返回
next()
的第二个参数;因此这里None
表示没有匹配的标点符号(因此any()
将返回False
)。你知道吗不,
any()
只能返回True或False,如果需要变量,请使用filter()
相关问题 更多 >
编程相关推荐