语句语法说明



我是Python的新手,所以我希望有人可以分解以下陈述并解释每个部分的目的。

[digit for digit in string.split() if digit.isdigit()][0]

显然,for digit in string.split()通过将字符串分隔为每个空格的元素来创建子字符串列表。

让我感到困惑的是开头的digit和最后的if陈述。

第一digitif digit.isdigit()返回什么吗?

为什么此语句必须包装在列表中?

我以前从未见过 for 循环和 if 语句组合成这样的语句,但它让我想起了一个特定的 JS 语法:for (condition) // whateverif (condition) // whatever。但是,在JS中,您不能将它们组合成一个语句(即for (condition) if (condition) // whatever)。

这称为列表理解。你会发现很多页面解释它是如何工作的。只要问你最喜欢的搜索引擎。

最新更新