python通过配置文件ini,调取数据库登录信息

配置文件config01.ini

[db01]
db_user = tbgx
db_pwd = tbgx
db_host = 192.168.2.200:1521/dysb
db_port = 1521



[db02]
db_user = root
db_pwd = root
db_host = 192.168.192.9
db_port = 3306

调取数据库登录信息

1.导入必要的python模块包

from configparser import ConfigParser
import string, os, sys

2.根据情况选择路径(本地、exe)

#在本地测试运行时的读取配置文件路径
exe_path = sys.path[0]
#打包exe的读取配置文件路径
exe_path = os.path.dirname(os.path.realpath(sys.argv[0]))

3.读取配置文件

# 读取配置文件

cf = ConfigParser()

cf.read(os.path.join(exe_path,'config01.ini'))


4.读取配置参数
 

#目标表数据库参数
db_user01 = cf.get('db01','db_user')
db_pwd01  = cf.get('db01','db_pwd')
db_host01  = cf.get('db01','db_host')
db_port01 = cf.get('db01','db_port')

#规则表数据库参数
db_user02 = cf.get('db02','db_user')
db_pwd02  = cf.get('db02','db_pwd')
db_host02  = cf.get('db02','db_host')
db_port02 = cf.get('db02','db_port')

上述python代码汇总
 

from configparser import ConfigParser
import string, os, sys



# 读取配置文件

cf = ConfigParser()
#在本地测试运行时
exe_path = sys.path[0]
#打包exe
#exe_path = os.path.dirname(os.path.realpath(sys.argv[0]))
cf.read(os.path.join(exe_path,'config01.ini'))


#目标表数据库参数
db_user01 = cf.get('db01','db_user')
db_pwd01  = cf.get('db01','db_pwd')
db_host01  = cf.get('db01','db_host')
db_port01 = cf.get('db01','db_port')

#规则表数据库参数
db_user02 = cf.get('db02','db_user')
db_pwd02  = cf.get('db02','db_pwd')
db_host02  = cf.get('db02','db_host')
db_port02 = cf.get('db02','db_port')

exe_path需要注意!!!

在本地测试运行时exe_path = sys.path[0]

打包成exe后,需要获取到执行exe的路径:os.path.dirname(os.path.realpath(sys.argv[0])),sys.argv[0]表示程序自身,realpath方法可以获取绝对路径.

修改为windows的相对路径,并用os.path.realpath(sys.argv[0])代替__file__
 

可以参考下面:

##获取脚本路径(不同python版本下)
    def cur_file_dir():
     #获取脚本路径
     path = sys.path[0]
#判断为脚本文件还是py2exe编译后的文件,如果是脚本文件,则返回的是脚本的目录,如果是py2exe编译后的文件,则返回的是编译后的文件路径
     if os.path.isdir(path):
         return path
     elif os.path.isfile(path):
         return os.path.dirname(path)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值