我正在尝试构建一个通用文件,用于在数据库上创建一个表,我想从命令行发送类似这样的内容
python create_table.py table_name=test name=TEXT city=TEXT
所以每次我运行该文件时,我都可以创建一个包含新字段的新表,每个字段都有他的类型
我想出使用 sys.argv 并像这样发送它
python create_table.py test name TEXT city TEXT
并以 sys.arg[1] 作为表名,以 sys.argv[2] 作为第一列,以 sys.argv[3] 作为其类型,另一列如下
我的问题是有比使用 sys.argv 更好的方法吗?
我喜欢在此类用例中使用 argparse。
import argparse
def main():
# Create ArgumentParser object
parser = argparse.ArgumentParser(description='Create a database table')
# Add arguments
parser.add_argument('table_name', type=str, help='Name of the table')
parser.add_argument('name', type=str, help='Name entry')
parser.add_argument('city', type=str, help='City entry')
# Parse the command-line arguments
args = parser.parse_args()
# Print the arguments
print(f"Table Name: {args.table_name}")
print(f"Column Name: {args.name}")
print(f"Column Type: {args.city}")
main()