如何使用Python的Easygui模块选择文件并将文件名插入代码

1 投票
1 回答
9811 浏览
提问于 2025-04-15 13:15

我正在尝试使用Python的easygui模块来选择一个文件,然后把这个文件的名字插入到我写的程序里(见下面的代码)。所以我想在插入文件名1等地方插入文件名1和文件名2。任何帮助都非常感谢!谢谢!

import easygui
import csv

msg='none'
title='select a 90m distance csv file'
filetypes=['*.csv']
default='*'

filename1= easygui.fileopenbox()
filename2= easygui.fileopenbox()

dist90m_GIS_filename=(open('**insert filename1'**,'rb'))
datafile_filename=(open(**insert filename2'**,'rb'))

GIS_FH=csv.reader(dist90m_GIS_filename)
DF_FH=csv.reader(datafile_filename)

dist90m=[]
for line in GIS_FH:
    dist90m.append(line[3])

data1=[]
data2=[]
for line in DF_FH:
    data1.append(','.join(line[0:57]))
    data2.append(','.join(line[58:63]))

outfile=(open('X:\\herring_schools\\python_tests\\excel_test_out.csv','w'))
i=0
for row in data1:
    row=row+','+dist90m[i]+','+data2[i]+'\n'
    outfile.write(row)
    i=i+1
outfile.close()

1 个回答

2

我假设你是编程新手。如果我误解了你的问题,抱歉哦。

在你的代码中,在以下几行之后:

filename1 = easygui.fileopenbox()
filename2 = easygui.fileopenbox()

选中的文件名被存储在变量 filename1filename2 中。你可以用这些变量来打开文件,比如这样:

dist90m_GIS_filename=(open(filename1,'rb'))
datafile_filename=(open(filename2,'rb'))

注意我直接写了 filename1,而你写的是 **insert filename1**。这就是变量的意义所在。你在需要它们的地方使用它们的值。

撰写回答