首页 > 解决方案 > Python for loop variable(K) in range(1,11) 如何在 HHkC 之类的词中使用并显示 HH1C、HH2C......HH10C?

问题描述

我为 range(1,11) 运行了一个 for 循环,并使用 k 作为变量。但是 HHk_C.txt 或 HHkC 中的 K 不会被解释为 HH1_C.txt 或 HH1C,而是 python 将其读取为 HHk_C.txt 和 HHkC。如何告诉 python 将 HHk_C.txt 或 HHkC 读取为 HH1_C.txt 或 HH1C (1 到 10) ?

代码

for k in range(1,11):
with open('HHk_C.txt') as f:
    HHkC = f.read().splitlines()
with open('HHk_M.txt') as f:
    HHkM = f.read().splitlines()
with open('HHk_W.txt') as f:
    HHkW = f.read().splitlines()
x[k] = Function(HHkC,HHkM)
y[k] = Function(HHkC,HHkW)

错误

---------------------------------------------------------------------------
IOError                                   Traceback (most recent call last)
<ipython-input-9-4574aac9a0b3> in <module>()
      1 for k in range(1,11):
----> 2     with open('HHk_C.txt') as f:
      3         HHkC = f.read().splitlines()
      4     with open('HHk_M.txt') as f:
      5         HHkM = f.read().splitlines()

IOError: [Errno 2] No such file or directory: 'HHk_C.txt'

标签: pythonloopsfor-loopvariablesjupyter-notebook

解决方案


您可以使用f 字符串

for i in range(1, 11):
    with open(f'HH{i}_C.txt') as f:
        #do something

推荐阅读