Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.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之前,如何访问索引?_Python - Fatal编程技术网

在我使用Python之前,如何访问索引?

在我使用Python之前,如何访问索引?,python,Python,在理解如何在Python循环中访问索引方面有些困难。您将如何用Python编写此代码 int x = 5; for (int i = 0; i < s.length; i++) { if (s[i] + s[i - 1] == x) { System.out.println("Success"); } } 如果以前有人问过这个问题,我很抱歉,但我真的找不到一个解决方案来解决Python循环中处理索引的确切方法。非常感谢你的帮助 for i, c in en

在理解如何在Python循环中访问索引方面有些困难。您将如何用Python编写此代码

int x = 5;
for (int i = 0; i < s.length; i++) {
    if (s[i] + s[i - 1] == x) {
        System.out.println("Success");
    }
}
如果以前有人问过这个问题,我很抱歉,但我真的找不到一个解决方案来解决Python循环中处理索引的确切方法。非常感谢你的帮助

for i, c in enumerate(s):
    if c + s[i - 1] == x:
c
这里将是列表中的一个元素,引用
s[i]
,i将是索引变量。要访问位于
i-1
的元素,需要使用
s[i-1]
。但是当
i
为0时,您将把
s[0]
s[-1]
s
的最后一个元素)进行比较,这可能不是您想要的,您应该注意这一点


c
这里将是列表中的一个元素,引用
s[i]
,i将是索引变量。要访问位于
i-1
的元素,需要使用
s[i-1]
。但是当
i
为0时,您将把
s[0]
s[-1]
s
的最后一个元素)进行比较,这可能不是您想要的,您应该注意这一点,假设是一个带有数字的序列,并考虑第一部分中的第一个Java风格代码

s = [0,1,2,3,4,5,..]
x = 5

for i in range(1, len(s)):
    if s[i] +s[i-1] == x:
        print("Success")

考虑到
s
是一个序列,假设is是一个带有数字的序列,并考虑第一部分中的第一个Java风格代码

s = [0,1,2,3,4,5,..]
x = 5

for i in range(1, len(s)):
    if s[i] +s[i-1] == x:
        print("Success")
枚举()方法将lop目标拆分为包含索引和目标元素的元组。 与c风格的语言不同,当在python中使用for循环而不使用枚举时,i表示元素。这意味着您在调用时不必在列表中插入索引。 python中的代码如下所示。

s=[1,2,3,4,5,6,7,8,9]#名为s的列表。
x=5
对于s中的i:
如果i+i-1==x:
打印(“成功”)

因为我们只处理整数,你也可以这样做


x=5
对于范围(10)内的i:
如果i+i-1==x:
print(“success”)
enumerate()方法将lop目标拆分为包含索引和目标元素的元组。 与c风格的语言不同,当在python中使用for循环而不使用枚举时,i表示元素。这意味着您在调用时不必在列表中插入索引。 python中的代码如下所示。

s=[1,2,3,4,5,6,7,8,9]#名为s的列表。
x=5
对于s中的i:
如果i+i-1==x:
打印(“成功”)

因为我们只处理整数,你也可以这样做


x=5
对于范围(10)内的i:
如果i+i-1==x:

打印(“成功”)

x=5表示范围内的i(len(s)):如果s[i]+s[i-1]==x:print('success')您的问题中的
s
是什么?将
s
的第一个和最后一个元素对一起测试是一个bug还是一个功能?您会得到什么错误?你期望得到什么呢?s是一个列表,或者Java codex=5中的一个数组,表示范围内的i(len(s)):如果s[i]+s[i-1]==x:print('Success'),你的问题中的
s
是什么?是一个bug还是一个特性,
s
的第一个和最后一个元素对一起测试?你得到了什么错误?你期望得到什么呢?s是一个列表,或者Java代码中的一个数组。我想访问第i个索引中的数字,而不是第i个索引本身。在你的例子中,我们不是要加1+0,然后再加2+1,以此类推吗?我想访问第I个索引中的数字,而不是第I个索引本身。在你的例子中,我们不是要加1+0,然后再加2+1,以此类推吗?试试这个值:
s=[0,0,5,5,6,5]
x=5
,它应该打印一次,但会打印两次,这是因为
s[i-1]
在第一次迭代中。我在回答中提到,这可能不是您在第一次迭代中想要做的,因为我将是0。问题中的Java代码是从0开始循环的,我不想偏离这一点。请尝试以下值:
s=[0,0,5,5,6,5]
x=5
,它应该打印一次,但会打印两次,这是因为
s[I-1]
在第一次迭代中。我在回答中提到,这可能不是您在第一次迭代中想要做的,因为我将是0。问题中的Java代码是从0开始循环的,我不想偏离这一点。请注意,Java代码从
0
开始,而不是
1
,因此它会检查第一个和最后一个元素的总和是否为
5
。请注意,Java代码从
0
开始,而不是
1
,因此,它检查第一个和最后一个元素的总和是否为
5