如何让-c开关不需要输入?然后,如果在运行test.py脚本时指定了-c开关,则应运行此if语句并创建数据库。我不是专家,所以我很感激代码示例。
parser = argparse.ArgumentParser(prog='test.py', description='Testing Script')
parser.add_argument('-d', '--device', nargs= '*', type=str, help="Device IP")
parser.add_argument("-c", '--createDatabase', nargs= '?', help="Create Database")
parser = menu.parse_args()
if args.c:
print 'It Worked!, now creating database'
con1 = MySQLdb.connect("localhost","root","testing")
query = con1.cursor()
query.execute("SET sql_notes = 0; ")
query.execute("CREATE DATABASE IF NOT EXISTS test CHARACTER SET utf8 COLLATE utf8_general_ci;")
con1.commit()
con1.close()
答案 0 :(得分:2)
使用store_true
操作:
parser.add_argument("-c", '--createDatabase', action="store_true", help="Create Database")
这会使args.c
默认为False
,如果True
选项存在,则更改为-c
。