用python完成以下需求:path = rCUserssDesktop username oschdirpath dircontent = oslistdirpath for i in dircontent if BenchmarkAutomation in i Z = ospathjoinpath i Result
根据报错信息,可以看到在读取CSV文件后,尝试获取'C'列的值时发生了KeyError。这可能是因为CSV文件中没有名为'C'的列。
要解决这个问题,可以先打印出CSV文件中的所有列名,查看是否有'C'列,然后根据实际情况修改代码。修改后的代码如下所示:
import os
import pandas as pd
path = r"C:\Users\%s\Desktop" % username
os.chdir(path)
dircontent = os.listdir(path)
for i in dircontent:
if 'BenchmarkAutomation' in i:
Z = os.path.join(path, i, 'Result')
os.chdir(Z)
dircontent = os.listdir(Z)
for file_name in dircontent:
if '[SystemInformation]' in file_name and '.csv' in file_name:
# 读取CSV文件
csv_path = os.path.join(Z, file_name)
df = pd.read_csv(csv_path)
# 打印所有列名
print(df.columns)
# 获取c11单元格的值
c11_value = df.at[10, 'C']
print(c11_value)
运行修改后的代码,可以看到打印出了CSV文件中的所有列名。根据实际情况修改获取单元格值的代码,确保所选的列名存在于CSV文件中
原文地址: http://www.cveoy.top/t/topic/i1YP 著作权归作者所有。请勿转载和采集!