gpt4 book ai didi

python - 同时更改两个 Python 列表的索引

转载 作者:行者123 更新时间:2023-12-01 01:37:18 25 4
gpt4 key购买 nike

我正在使用 python 3,并且有两个通过索引相关的列表,但具有单独的值。

scans = [400,405]
points = [101,201]

例如,扫描 400 有 101 个点,扫描 405 有 201 个点。

我正在尝试为每次扫描构建一组文件名(即字符串),如下所示:

2idd_flyXMAP_0400_0.nc
2idd_flyXMAP_0400_1.nc
2idd_flyXMAP_0400_2.nc
...
2idd_flyXMAP_0400_98.nc
2idd_flyXMAP_0400_99.nc
2idd_flyXMAP_0400_100.nc

2idd_flyXMAP_0405_0.nc
2idd_flyXMAP_0405_1.nc
2idd_flyXMAP_0405_2.nc
...
2idd_flyXMAP_0405_199.nc
2idd_flyXMAP_0405_200.nc

请注意,扫描 405 将有更多与其关联的文件。我接近了下面的代码,但是嵌套 for 循环的性质让我迭代了太多次,并生成了不需要的字符串(即一组包含 200 个点的扫描 400 和一组包含 100 个点的扫描 405,两者是不必要的)。

scans = [400,405]
points = [101,201]

for scan in scans:
pre_f = '2idd_flyXMAP_0' + str(scan) + '_'
for point in points:
endfile = list(range(point)) #this seems to be where the problem is; i generate four sets of lists here because i have two elements in two lists
for point in endfile:
f = pre_f + str(point) + '.nc'
print(f)

我的设置可能不准确,但在这种情况下我想做的是更改 scan for 循环和第一个 的索引当第一个 for 循环完成后,for 循环。我不知道如何实现这一点,但我认为这应该可以解决我的问题。

当然,我愿意接受单独的、更简单的方法,并提前感谢您的帮助!

最佳答案

您可以使用zip :

scans = [400, 405]
points = [5, 6]

for scan, point in zip(scans, points):
pre_f = '2idd_flyXMAP_0' + str(scan) + '_'
for p in range(point):
f = pre_f + str(p) + '.nc'
print(f)

输出

2idd_flyXMAP_0400_0.nc
2idd_flyXMAP_0400_1.nc
2idd_flyXMAP_0400_2.nc
2idd_flyXMAP_0400_3.nc
2idd_flyXMAP_0400_4.nc
2idd_flyXMAP_0405_0.nc
2idd_flyXMAP_0405_1.nc
2idd_flyXMAP_0405_2.nc
2idd_flyXMAP_0405_3.nc
2idd_flyXMAP_0405_4.nc
2idd_flyXMAP_0405_5.nc

关于python - 同时更改两个 Python 列表的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52278793/

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