【问题标题】:For loop with if conditional statement带 if 条件语句的 for 循环
【发布时间】:2022-11-26 14:53:27
【问题描述】:

我试图理解为什么第一个代码只运行一次而第二个代码一直运行直到它检查列表中的所有项目。

1.

for word in list_of_words:
    if len(word) > 10:
        return word
    else:
        return ''
for word in list_of_words:
    if len(word) > 10:
        return word
return ''

如果长度大于 10,则尝试返回一个单词,如果长度小于等于 10,则返回空字符串。

【问题讨论】:

  • 您能否分享整个功能和列表以使您的问题更清楚?

标签: python for-loop if-statement


【解决方案1】:

您列表中的项目是如何排序的?因为调用函数中的return语句时,函数返回参数并停止。在第一段代码中,if 子句中的returnelselist_of_words 中的第一项之后被调用,因此函数到此为止。在第二段代码中,return word 语句仅在找到超过 10 个字符的单词时才被调用。从你描述问题的方式来看,我估计你的list_of_words 中的最后一项超过 10。因此对于第二段代码,你注意到没有返回那个词,而你没有注意到没有返回空字符串回来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-30
    • 2019-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多