Skip to main content
 首页 » 编程设计

python之Python 中的 For(不是 foreach)循环

2025年05月04日9kerrycode

我需要制作一个简单的 python 脚本,但由于我主要使用 PHP/C++,我发现如果没有简单的 for 循环,我很难管理自己。 假设我有一个代码:

for(int i = 0; i < some_string_length; i++) 
{ 
//do something... 
} 

如您所见,它的数量是我字符串中字母数量的两倍。当然,我可以在 while 循环中执行此操作,但这有一个问题。我必须要么在循环外创建一个变量,使其成为全局变量,要么在循环内创建它,但这个变量的值不能用于循环的参数。

错误:

while(i < some_string_length) 
{ 
i = something; //declaring i for the first time 
i++; 
} 

如您所见,它根本没有意义。那么我该怎么做呢?

请您参考如下方法:

来自其他语言的结构

for (int i = start; i < stop; i += step) { … } 

直接转换为 Python for 循环 range :

for i in range(start, stop, step): 
    … 

step默认为1,i++不需要指定。 start 默认为零,因此如果您以 i = 0 开头,您也可以忽略它:

for i in range(stop): # the same as `for (int i = 0; i < stop; i++)` 
    … 

所以,如果你想在字符串的长度上迭代 i,你可以这样做:

for i in range(len(my_string)): 
    … 

不过,通常您会想要访问该字符串的字符,因此您可以直接遍历字符:

for char in my_string: 
    … 

或者,如果你确实也需要索引,你可以使用 enumerate获得两者:

for i, char in enumerate(my_string): 
    …