gpt4 book ai didi

python - 如何访问for循环内的元素?

转载 作者:行者123 更新时间:2023-12-04 21:28:36 25 4
gpt4 key购买 nike

我对 Python 完全陌生。我正在尝试使用此代码访问并打印数组的第 i 元素。

import time
from random import random

array = []
array1 = []

a = 0

for i in range(1,100000000):
a = a + 1
time.sleep(.2)

x = random()

array.append(x)
#print(array)
array1[a] = array[a]*0.5

print(array[a])

但它给了我这个错误:

Traceback (most recent call last):
File "C:/Users/carlo/.PyCharmCE2019.3/config/scratches/PaulMcW(Plotting)/StoringData.py", line 17, in <module>
array1[a] = array[a]*0.5
IndexError: list index out of range

我如何执行这个简单的任务?

最佳答案

您正在尝试访问列表中不存在的成员。

a = a + 1
time.sleep(.2)

x = random()
array.append(x)
array1[a] = array[a]*0.5

print(array[a])

a 等于 1,但请注意,列表索引从 0 开始,而不是从 1 开始。这就是为什么您的错误显示“列表索引超出范围”。

解决方案是将a = a + 1移至for循环的末尾。

time.sleep(.2)

x = random()
array.append(x)
array1[a] = array[a]*0.5

print(array[a])
a = a + 1

但是,还有另一个问题:您正在分配 array1[a] = array[a]*0.5array1 为空。要解决这个问题,请使用与 array 相同的方法。

time.sleep(.2)

x = random()
array.append(x)
array1.append(array[a]*0.5)

print(array[a])
a = a + 1

关于python - 如何访问for循环内的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59448028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com