Как python получает доступ к файлу при щелчке правой кнопкой мыши в Windows? - PullRequest
0 голосов
/ 23 февраля 2019

Я написал простой скрипт на python, который берет файл .csv, переупорядочивает его и выплевывает файл excel.Моя цель состоит в том, чтобы иметь возможность щелкнуть правой кнопкой мыши файл .csv в Windows и создать файл .xslx.Я использовал PyInstaller, чтобы успешно создать .exe, и я использовал редактор программ по умолчанию , чтобы поместить мой исполняемый файл в контекстное меню, когда щелкают правой кнопкой мыши файлы CSV.Что я не могу понять, так это как правильно выполнить ввод-вывод.

Что у меня есть:

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

Что не работает.

Как я могу получить доступ к файлам Windows, передается мне, когда я открываю файл?

Редактировать: Просто чтобы устранить путаницу.Если я жестко закодирую расположение файла csv, мой скрипт работает просто отлично.Моя проблема в том, как мне получить доступ к файлу, который Windows (предположительно) передает моему сценарию, когда я щелкаю правой кнопкой мыши на файле csv и выбираю открыть с помощью csv2xslx (мой сценарий).

1 Ответ

0 голосов
/ 24 февраля 2019

Спасибо Мартино выше за указатель.Следующее заставило его работать:

file = sys.argv[1]
with open(file, 'rt', newline='', encoding='utf8') as csvfile:
    # do stuff
# write xslx_filename

Я до сих пор не уверен, что это «правильный» способ сделать это, но он работает, поэтому я счастлив.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...