为什么这个 Python "loop code" 不起作用?

Why this Python "loop code" does not work?

为什么这段代码不起作用?

ffi5_1 = pd.read_csv('/Users/d/bm_ffi5_1.csv')
ffi5_2 = pd.read_csv('/Users/d/bm_ffi5_2.csv')
ffi5_3 = pd.read_csv('/Users/d/bm_ffi5_3.csv')
ffi5_4 = pd.read_csv('/Users/d/bm_ffi5_4.csv')
ffi5_5 = pd.read_csv('/Users/d/bm_ffi5_5.csv')

s_list = list(range(1,6))

for x in s_list:
    ffi5_x.jdate = pd.to_datetime(ffi5_x.jdate)

这里jdate是dataframe的列。

您的代码可能失败并显示您尝试引用的消息 一个不存在的变量 ffi5_x.

为了将DataFrame名称中的x替换为当前值 x - 循环控制变量(在 2 个地方),将循环更改为:

for x in s_list:
    exec('ffi5_' + str(x) + '.jdate = pd.to_datetime(ffi5_' + str(x) + '.jdate)')