# -*- coding: utf-8 -*- import argparse import time import pymysql dbhost = '' dbport = '' dbuser = '' dbpass = '' def banner(): parser = argparse.ArgumentParser(description='Process MySQLMonitor command line arguments') parser.add_argument('--host', type=str, help='mysql host') parser.add_argument('--port', type=str, help='mysql port') parser.add_argument('--username', type=str, help='mysql username') parser.add_argument('--password', type=str, help='mysql password') parser.add_argument('--info', action='store_true', help='Help Info') args = parser.parse_args() helpinfo = '''[?]CommandLine: --host mysql host --port mysql port --username mysql username --password mysql password --info help info eg: python x-tools.py --host 127.0.0.1 --port 3306 --username root --password root''' dbhost = args.host dbport = args.port or '3306' dbuser = args.username dbpass = args.password if args.info: print(helpinfo) exit() if not (args.host and args.username and args.password): print(helpinfo) exit()这样写对吗
时间: 2024-03-16 22:45:17 浏览: 91
代码的格式看上去没有问题,但是需要注意的是,函数内定义的变量在函数外是无法访问的。也就是说,你在函数内定义的 `dbhost`、`dbport`、`dbuser`、`dbpass` 四个变量,在函数外是无法直接使用的。如果你想要在函数外使用这四个变量,可以在函数最后添加以下代码:
```
return dbhost, dbport, dbuser, dbpass
```
然后在函数调用的地方接收返回值,例如:
```
dbhost, dbport, dbuser, dbpass = banner()
```
阅读全文