PROG_WAY_BLOG Telegram 50
Как передать параметры в программу Python из консоли.

Я думаю многие видели конструкции запуска файлов типа
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Такие конструкции бывают полезны, когда скрипт запускается с определенными параметрами автоматически. Как самый близкий мне пример, когда нужно реализовать автоматизированный обработчик логов. Мы получаем на сервер новый чанк информации, засовываем её в в скрипт и на выходе получаем проанализированный файлик, например.

В общем, штука полезная и знать её точно стоило бы, но как реализовать - непонятно.
Я покажу 2 способа:

Первый через встроенную библиотеку sys. Мы получаем список всех аргументов, которые у нас есть при запуске, и уже после можем по нему итерироваться, например:
import sys

for param in sys.argv:
print(param)

Тогда при запуске вот такой конструкции:
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Мы получим вывод:
file.py
-n
ProgWay
—url
www.tgoop.com/prog_way_blog

С этим уже можно работать, но при большом количестве аргументов ваш код постепенно будет превращаться в нечитабельное говно с огромным количеством условных конструкций, что не есть хорошо.

Второй вариант уже куда более изящный - там я использую библиотеку argparse:
import sys 
import argparse

def getArgs():
parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default="ProgWay")
parser.add_argument('-u', '--url', default="www.tgoop.com/prog_way_blog")
return parser.parse_args()


if __name__ == "__main__":
args = getArgs()
print(args.name)

Тогда при вводе той же строки:
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Мы получим объект, из которого по ключам можем легко достать любой аргумент.

args.name // ProgWay
args.url // www.tgoop.com/prog_way_blog

Таким образом организовать получение аргументов из командной строки очень просто и эффективно. Спасибо за прочтение ❤️

#python



tgoop.com/prog_way_blog/50
Create:
Last Update:

Как передать параметры в программу Python из консоли.

Я думаю многие видели конструкции запуска файлов типа
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Такие конструкции бывают полезны, когда скрипт запускается с определенными параметрами автоматически. Как самый близкий мне пример, когда нужно реализовать автоматизированный обработчик логов. Мы получаем на сервер новый чанк информации, засовываем её в в скрипт и на выходе получаем проанализированный файлик, например.

В общем, штука полезная и знать её точно стоило бы, но как реализовать - непонятно.
Я покажу 2 способа:

Первый через встроенную библиотеку sys. Мы получаем список всех аргументов, которые у нас есть при запуске, и уже после можем по нему итерироваться, например:

import sys

for param in sys.argv:
print(param)

Тогда при запуске вот такой конструкции:
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Мы получим вывод:
file.py
-n
ProgWay
—url
www.tgoop.com/prog_way_blog

С этим уже можно работать, но при большом количестве аргументов ваш код постепенно будет превращаться в нечитабельное говно с огромным количеством условных конструкций, что не есть хорошо.

Второй вариант уже куда более изящный - там я использую библиотеку argparse:
import sys 
import argparse

def getArgs():
parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default="ProgWay")
parser.add_argument('-u', '--url', default="www.tgoop.com/prog_way_blog")
return parser.parse_args()


if __name__ == "__main__":
args = getArgs()
print(args.name)

Тогда при вводе той же строки:
python file.py -n ProgWay —url www.tgoop.com/prog_way_blog
Мы получим объект, из которого по ключам можем легко достать любой аргумент.

args.name // ProgWay
args.url // www.tgoop.com/prog_way_blog

Таким образом организовать получение аргументов из командной строки очень просто и эффективно. Спасибо за прочтение ❤️

#python

BY progway — программирование, IT




Share with your friend now:
tgoop.com/prog_way_blog/50

View MORE
Open in Telegram


Telegram News

Date: |

Add up to 50 administrators Deputy District Judge Peter Hui sentenced computer technician Ng Man-ho on Thursday, a month after the 27-year-old, who ran a Telegram group called SUCK Channel, was found guilty of seven charges of conspiring to incite others to commit illegal acts during the 2019 extradition bill protests and subsequent months. 1What is Telegram Channels? Some Telegram Channels content management tips Hashtags are a fast way to find the correct information on social media. To put your content out there, be sure to add hashtags to each post. We have two intelligent tips to give you:
from us


Telegram progway — программирование, IT
FROM American