Запуск python с параметрами, как сделать?

Допустим я хочу запускать файл вот так: python main.py param1 param2 И хочу чтобы в самом файле было так

a=param1
b=param2

Ответы (2 шт):

Автор решения: Евгений
# -*- coding: UTF-8 -*-
import sys

a = sys.argv[1]
b = sys.argv[2]

sys.argv - список параметров запуска. Первым параметром получается имя запускаемого файла. Однако стоит учитывает, что пользователь может и не указать параметры при запуске, что приведёт к ошибке.

Пусть файл с кодом выше называется test.py. Запустим его командой:

python test.py hello 412

Тогда sys.argv равен ['test.py', 'hello', '412']
Также обращаю внимание на то, что этот список всегда содержит именно строковые значения, и это тоже может быть важно (например, название функции или None туда передать будет затруднительно)

→ Ссылка
Автор решения: S. Nick

Попробуйте так:

import sys

a = b = ''
if __name__ == '__main__':
    
    if len(sys.argv) > 1:
        a = sys.argv[1]
    if len(sys.argv) > 2:
        b = sys.argv[2]

    print(f'a = {a}, b = {b}')
→ Ссылка