Мне кажется, что это невероятно легко исправить, но по какой-то причине это не так.
Я хочу запустить программу в Linux, которая открывает файл python filename.py, написав:
python3 filename arg
но это работает, только если я напишу:
python3 filename.py arg
Есть ли простой способ запустить его без добавления расширения? И без полного удаления расширения? Я бы вообще не подумал, что это проблема, но вот мы здесь. Благодарен за помощь!
Почему? Кроме того, что, если в том же каталоге есть файл с именем «filename» (без .py)? Кроме того, решает ли python3 -m filename arg вашу проблему?
python3: невозможно открыть файл isConnected: [Errno 2] Нет такого файла или каталога. Я уверен, что нахожусь в правильном каталоге!






Ваш файл называется filename.py, поэтому вы называете его python3 filename.py. Если вы хотите вызвать его с помощью python3 filename, вам нужно переименовать файл.
Единственное, что вы можете сделать, - это вызвать Python с переключателем -m, который попытается импортировать модуль с таким именем, то есть python3 -m filename. Это должно работать без переименования файла.
Ха. Значит, с моим заданием что-то не так! В требованиях указано, что то, что я описал, должно быть возможным, но после всего времени, которое я потратил на это, я чувствую, что вы правы. Думаю, где-то есть опечатка или что-то в этом роде! Благодарю за разъяснение!
Во-первых, если вы запустите свой скрипт python с помощью shebang, вам не нужно будет вводить «python3» перед именем файла каждый раз, когда вы хотите запустить код.
`#!/usr/bin/env python3'
Во-вторых, если вы создаете файл setup.py в том же каталоге. Затем вы можете установить свой скрипт локально, используя:
$ sudo pip3 install -e .
из вашего каталога.
После этого вы сможете запускать свой скрипт из любого места в терминале, используя:
$ myscript args
Подробнее о создании установочного файла здесь: https://python-packaging-user-guide.readthedocs.io/tutorials/distributing-packages/#setup-py
и пример установочного файла здесь: https://github.com/pypa/sampleproject/blob/master/setup.py
Какое сообщение об ошибке вы получаете?