Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的For(非foreach)循环 我需要编写一个简单的Python脚本,但是由于我主要是PHP/C++,所以我发现在没有简单的for循环的情况下很难管理自己。 假设我有一个代码: for(int i = 0; i < some_string_length; i++) { //do something... } for(int i=0;i_Python - Fatal编程技术网

Python中的For(非foreach)循环 我需要编写一个简单的Python脚本,但是由于我主要是PHP/C++,所以我发现在没有简单的for循环的情况下很难管理自己。 假设我有一个代码: for(int i = 0; i < some_string_length; i++) { //do something... } for(int i=0;i

Python中的For(非foreach)循环 我需要编写一个简单的Python脚本,但是由于我主要是PHP/C++,所以我发现在没有简单的for循环的情况下很难管理自己。 假设我有一个代码: for(int i = 0; i < some_string_length; i++) { //do something... } for(int i=0;i,python,Python,正如你所看到的,它只是我字符串中的字母数的几倍。当然,我可以在一段时间内完成这项工作,但这有一个问题。我必须在循环外部创建一个变量,使其成为全局变量,或者在循环内部创建它,但是这个变量的值不能用在循环的参数中 错: while(i < some_string_length) { i = something; //declaring i for the first time i++; } while(i

正如你所看到的,它只是我字符串中的字母数的几倍。当然,我可以在一段时间内完成这项工作,但这有一个问题。我必须在循环外部创建一个变量,使其成为全局变量,或者在循环内部创建它,但是这个变量的值不能用在循环的参数中

错:

while(i < some_string_length)
{
i = something; //declaring i for the first time
i++;
}
while(i
正如你所看到的,这毫无意义。那么我该怎么做呢?

试试:

for i in range(0,some_string_length):
    # do something...
尝试:


我想您应该使用
范围
功能

for x in range(0, 3):
    print "x: %d" (x)

我想您应该使用
范围
功能

for x in range(0, 3):
    print "x: %d" (x)

不过,我想你会惊讶地发现,你实际上很少需要
I
。您最好学习如何使用Python习惯用法,而不是强迫自己用Python编写PHP/C++代码


不过,我想你会惊讶地发现,你实际上很少需要
I
。您最好学习如何使用Python习惯用法,而不是强迫自己用Python编写PHP/C++代码。

如果您有
字符串s

s = "some string"
您可以这样做:

for i in range(len(s)):
    print i

如果您有一个
字符串s

s = "some string"
您可以这样做:

for i in range(len(s)):
    print i

其他语言的构造

for (int i = start; i < stop; i += step) { … }
默认情况下,
step
为1,因此无需为
i++
指定它
start
默认为零,因此如果以
i=0
开头,也可以省略该选项:

for i in range(stop): # the same as `for (int i = 0; i < stop; i++)`
    …
通常,您希望访问该字符串的字符,因此您可以直接迭代这些字符:

for char in my_string:
    …
或者,如果您确实也需要索引,您可以使用以下两种方法:

for i, char in enumerate(my_string):
    …

其他语言的构造

for (int i = start; i < stop; i += step) { … }
默认情况下,
step
为1,因此无需为
i++
指定它
start
默认为零,因此如果以
i=0
开头,也可以省略该选项:

for i in range(stop): # the same as `for (int i = 0; i < stop; i++)`
    …
通常,您希望访问该字符串的字符,因此您可以直接迭代这些字符:

for char in my_string:
    …
或者,如果您确实也需要索引,您可以使用以下两种方法:

for i, char in enumerate(my_string):
    …

为什么不显示需要迭代的实际数据以及如何使用它呢?您可以尝试在Python中构建自己的C样式for循环,但我真的不明白为什么。为什么不显示需要迭代的实际数据以及如何使用它呢?您可以尝试在Python中构建自己的C样式for循环,但我真的不明白为什么。