我已经编写了一个简单的python脚本,该脚本需要一个.csv文件,对其进行重新排列并吐出一个Excel文件。我的目标是能够右键单击Windows中的.csv文件,并使其生成.xslx文件。我已经使用PyInstaller成功创建了一个.exe,并且在右键单击csv文件时使用了default programs editor将可执行文件放在上下文菜单中。我不知道如何正确执行I / O。
我所拥有的是:
import fileinput
import csv
try:
csv_filename = fileinput.filename()
print(csv_filename)
except: print('no input')
with open(filename_csv, 'rt', newline='', encoding='utf8') as csvfile:
# do stuff
# write xslx_filename
这不起作用。
当我打开文件时,如何访问文件窗口?
编辑: 只是为了消除混乱。如果我对csv文件的位置进行硬编码,则我的脚本可以正常工作。我的问题是,当我右键单击一个csv文件并选择使用csv2xslx(我的脚本)打开文件时,如何访问Windows(大概)传递给我的脚本的文件。
答案 0 :(得分:0)
感谢上面的马丁内斯指针。以下使它起作用:
file = sys.argv[1]
with open(file, 'rt', newline='', encoding='utf8') as csvfile:
# do stuff
# write xslx_filename
我仍然不确定这是否是“正确”的方法,但是它可以工作,所以我很高兴。