如何在 Python for 循环中添加条件
How to add a condition in Python for loop
在Java中,FOR循环语法提供了一个我们可以添加条件的地方。例如,在下面的代码中,条件是 i*j < n
for (i=0; i*j < n; i++)
{ ... }
在Python中,如何在for循环语句中添加这样的条件?
for i in range(n):
我知道我们可以在 for 循环中添加一个 if 语句,但我担心它会将 运行 时间增加到 O(n)。请指教
for
的复杂度为 O(n)
,因此 if
不会改变复杂度。
Java中的for(i=0; i*j < n; i++)
在Python中表示为while
:
i = 0 # initialization
while i * j < n: # conditions
do_something
i += 1 # step
当我从C转为python时,这是我最大的烦恼之一,但事实证明这实际上是对语法的误解。在python中,虽然你可以写成for i in range(n)
,但这通常表明你做错了什么。人们认为遍历元素比遍历数字更好。举个具体的例子,在 C 中,你可以这样写
for(i=0; i<len(str); i++){
str[i] blah blah blah
}
在 python 中,您可能会这样做的方式是直接遍历字符:
for char in str:
char blah blah blah
在Java中,FOR循环语法提供了一个我们可以添加条件的地方。例如,在下面的代码中,条件是 i*j < n
for (i=0; i*j < n; i++)
{ ... }
在Python中,如何在for循环语句中添加这样的条件?
for i in range(n):
我知道我们可以在 for 循环中添加一个 if 语句,但我担心它会将 运行 时间增加到 O(n)。请指教
for
的复杂度为 O(n)
,因此 if
不会改变复杂度。
Java中的for(i=0; i*j < n; i++)
在Python中表示为while
:
i = 0 # initialization
while i * j < n: # conditions
do_something
i += 1 # step
当我从C转为python时,这是我最大的烦恼之一,但事实证明这实际上是对语法的误解。在python中,虽然你可以写成for i in range(n)
,但这通常表明你做错了什么。人们认为遍历元素比遍历数字更好。举个具体的例子,在 C 中,你可以这样写
for(i=0; i<len(str); i++){
str[i] blah blah blah
}
在 python 中,您可能会这样做的方式是直接遍历字符:
for char in str:
char blah blah blah