Создайте скрипт bash, который вызывает скрипт Python, который принимает позиционные аргументы, именованные аргументы и фPython

Программы на Python
Anonymous
Создайте скрипт bash, который вызывает скрипт Python, который принимает позиционные аргументы, именованные аргументы и ф

Сообщение Anonymous »

Я хотел бы создать bash-скрипт, который вызывает скрипт Python. Сценарий Python принимает как позиционные аргументы, именованные аргументы, так и логические флаги. Идея состоит в том, что сценарий bash передает все, что пользователи предоставляют сценарию Python.
В качестве примера возьмем этот сценарий Python example.py:

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

import argparse

def run(positional_argument,named_argument='default',flag=False):
print(positional_argument)
print(named_argument)
print(flag)

if __name__ == '__main__':

parser = argparse.ArgumentParser()

# add positional arguments
parser.add_argument('positional_argument',type=str,choices=['a','b'])

# add keyword arguments
parser.add_argument('--named_argument',type=str,required=False,default='default')

# add flags
parser.add_argument('--flag',action='store_true')

# parse arguments
args = parser.parse_args()

# call function
run(positional_argument=args.positional_argument,
named_argument=args.named_argument,
flag=args.flag)
Теперь напишите скрипт-оболочку.sh, который внутренне вызывает example.py
P.S.: Более широкий контекст для любопытных читателей (хотя это и не обязательно для решения моего вопроса): Я хотел бы создать pip-пакет, который также можно использовать в качестве приложения командной строки. На этот вопрос уже есть ответ, но он касается только позиционных аргументов.

Подробнее здесь: https://stackoverflow.com/questions/782 ... l-argument

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