语句语法说明

时间:2018-07-07 21:56:50

标签: python python-3.x python-2.7

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

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

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

让我感到困惑的是开头的digit和结尾的if语句。

digit的第一个if digit.isdigit()返回值吗?

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

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

1 个答案:

答案 0 :(得分:0)

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