Мне нужно ввести параметры из командной строки, то есть имя пользователя, пароль и имя базы данных. Я знаю, как это сделать без использования флагов, используя 'sys.argv' (, как показано ниже ).
##Test.py
hostname = str(sys.argv[1])
username = str(sys.argv[2])
password = str(sys.argv[3])
def ConnecttoDB():
try:
con=sql.connect(host=hostname, user= username, passwd= password)
print ('\nConnected to Database\n')
# If we cannot connect to the database, send an error to the user and exit the program.
except sql.Error:
print ("Error %d: %s" % (sql.Error.args[0],sql.Error.args[1]))
sys.exit(1)
return con
Таким образом, его можно запустить как:
$test.py ИМЯ ПОЛЬЗОВАТЕЛЯ БАЗЫ ДАННЫХ ПАРОЛЬ
Но проблема в том, что я должен использовать «флаги». Таким образом, сценарий можно было бы запустить следующим образом:
$test.py -db DATABSE -u USERNAME -p PASSWORD -size 20
Как я могу использовать флаги для получения аргументов из командной строки? Я был бы признателен за вашу помощь в этом.