使用以下代码:
def get_args():
parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter,
description=textwrap.dedent('''\
The Easy PSQL CLI tool
--------------------------------
Easily edit your postgres configuration,
Add users, and create databases.
* Uses default postgres user *
'''))
parser._positionals.title = 'Positional arguments'
parser._optionals.title = 'Optional arguments'
parser.add_argument("--add-user",
required=False,
action='store',
default='',
help="Add a new PostgrSQL user")
parser.add_argument("--del-user",
required=False,
action='store',
default='',
help="Delete a PostgrSQL user")
parser.add_argument("--passwd",
required=False,
action='store',
default='',
help="Assign the new PostgreSQL user a password")
args = parser.parse_args()
args_dict = vars(args)
我需要获取任何这些参数的输入值,以便以后可以在一些对象中使用它们。最好是我想将它们转换为变量,例如,使--add-user = dbuser作为变量。
最重要的是,我想说是否使用了--add-user参数。.否则--del-user可以这样做,例如(一些无效的代码):< / p>
def dbuser(self):
if get_args.args('add-user'):
self.cur.execute(f"create user {self.user} with password '{self.password}'")
if get_args.args('del-user'):
self.cur.execute(f"drop user {self.user} ")