Как получить количество параметров командной строки в Python независимо от ключевого слова Python?Python

Программы на Python
Anonymous
Как получить количество параметров командной строки в Python независимо от ключевого слова Python?

Сообщение Anonymous »

У меня есть небольшой пример программы на Python:

Код: Выделить всё

import sys
print ("This is the name of the script: "+ sys.argv[0])
print ("Number of arguments: " + str(len(sys.argv)))
print ("The arguments are: " + str(sys.argv))
Я запускаю его в Windows CLI:

Код: Выделить всё

python args.py -a -b
Выход:

Код: Выделить всё

This is the name of the script: args.py
Number of arguments: 3
The arguments are: ['args.py', '-a', '-b']
Выглядит хорошо. Теперь я вызываю его без указания «python»:

Код: Выделить всё

args.py -a -b
Теперь результат совершенно другой:

Код: Выделить всё

This is the name of the script: C:\args.py
Number of arguments: 1
The arguments are: ['C:\\args.py']
Разве я не должен получить тот же результат? Почему отображается разное количество аргументов, хотя python.exe выполняет программу в обоих случаях?
Как это исправить?

Подробнее здесь: https://stackoverflow.com/questions/476 ... f-python-k

Вернуться в «Python»