我想构建一个用于读取和写入csv文件的GUI。基于输出文件,我正在创建另一个用于绘制的GUI。我正在使用pyQt4。文件夹中有6个文件。我想读取所有具有相同名称的文件,写入“ out.csv”文件。然后另一个GUI将从“ out.csv”绘制。
我的代码是:
def update(self):
cat1 = self.dropdown1.currentText()
counter = 1
for folder, sub_folders, files in os.walk(my_directory):
for cat1 in files:
if cat1 == 'iono_tropo.csv':
file_path = os.path.join(folder, 'iono_tropo.csv')
elif cat1 == 'PR_log.csv':
file_path = os.path.join(folder, 'PR_log.csv')
elif cat1 == 'Satellite_info.csv':
file_path = os.path.join(folder, 'Satellite_info.csv')
elif cat1 == 'Sol_1.csv':
file_path = os.path.join(folder, 'Sol_1.csv')
elif cat1 == 'Sol_2.csv':
file_path = os.path.join(folder, 'Sol_2.csv')
else:
file_path = os.path.join(folder, 'Sol_3.csv')
with open(file_path) as read_file:
print('Reading csv file' + str(counter))
if counter == 1:
lines = read_file.readlines()
else:
lines += read_file.readlines()[1:]
with open ("out.csv","w") as f:
for line in lines:
f.write(line)
counter += 1
该脚本显示错误,因为my_directory中没有“ Sol_3.csv”文件。现在,如果我将else
更改为elif cat1 == 'Sol_3.csv'
,那么它将通过仅读取“ Sol_3”来创建“ out.csv”。另一个文件未读取。我是python程序的新手。当我分别运行代码(不在GUI中)时,它可以工作。但是在这里什么也没显示。请帮助。预先感谢。