【发布时间】:2021-11-29 10:20:56
【问题描述】:
我的配置文件格式如下。
[Connection]
Oracle=Some Value
MySql=Some Value
[Queries]
productionTable1=Somevalue
productionTable2=Somevalue
现在我想编写一个程序文件,它将连接和表名作为输入,并从配置文件中获取相应的值。
我写了这样的代码:
import sys
import configparser
config = configparser.ConfigParser()
config.sections()
config.read('mytest.ini')
config.sections()
connection_name=sys.argv[0]
load_query=sys.argv[1]
Myconnection=config.get("Connections","{}".format(connection_name))
My_load_query=config.get("Queries","{}".format(load_query))
print(Myconnection)
print(My_load_query)
但是当我运行命令“python3 test3.py Oracle productionTable1”时
我收到以下错误:
During handling of the above exception, another exception occurred:
configparser.NoOptionError: No option 'test3.py' in section: 'Connections'
那么任何人都可以在我出错的地方帮助我。
【问题讨论】:
-
sys.argv[0]是脚本名称。您需要使用sys.argv[1]和sys.argv[2]。 -
或者为了更好的处理你也可以使用
argparse.ArgumentParser
标签: python python-3.x