все Python 3sysпонятие
sys.argv
аргументы
Список аргументов командной строки. sys.argv[0] — имя скрипта, остальные — переданные аргументы.
Синтаксис
sys.argv # list[str]
Все элементы — строки, даже «10»: без int() или float() арифметики не выйдет. Обращение к sys.argv[1] без проверки len(sys.argv) — самая частая причина IndexError, когда скрипт запустили без аргументов. Само sys.argv[0] зависит от способа запуска (при python -c это '-c', при чтении кода из stdin — пустая строка), а как только флагов становится больше пары, разбирайте их через argparse, а не вручную.
Примеры
import sys
sys.argv = ['script.py', 'arg1', 'arg2'] # так его заполнит: python script.py arg1 arg2
print(sys.argv) # → ['script.py', 'arg1', 'arg2'] — первым идёт имя скрипта
for arg in sys.argv[1:]:
print(arg) # → arg1 / arg2
print(len(sys.argv) - 1) # → 2 — число аргументов без имени скрипта
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности