目前运维的Python脚本,是用于同步数据的,分别有n个不同的脚本同步不同的数据,而不同的脚本连接的数据库是一致的,每个脚本都重复写这个数据库连接信息。

这导致测试时,从生产环境切换到测试环境时,需多处改配置,好费劲。

于是想将各脚本的数据库配置信息独立出来,各脚本去加载。

发现读取properties有点费劲,读取ini虽然方便,但格式不是最合适的。那么暂时就配置在程序的字典类型中吧。

首先,写一个模块和方法,将配置信息置于字典类型中。

#coding=utf-8
#!/usr/bin/python def setConfig():
dict = {};
dict['MYSQL_CONN_HOST'] = '127.0.0.3';
dict['MYSQL_CONN_USERNAME'] = 'username';
dict['MYSQL_CONN_PWD'] = 'pwd';
dict['MYSQL_CONN_PORT'] = '';
dict['MYSQL_CONN_CHARSET'] = 'utf8';
dict['ORACLE_CONN'] = 'username/pwd@127.0.0.1/helloworld';
print 'The value has been setted.';
return dict;

db_config.py

然后各个脚本就可以字典的形式获取配置信息了,这里为测试的脚本。

#coding=utf-8
#!/usr/bin/python
import db_config; print 'Start loading';
dict = db_config.setConfig();
print dict;
print 'End loading';

load_config.py

Python的模块调用的更多相关文章

  1. python常用模块-调用系统命令模块(subprocess)

    python常用模块-调用系统命令模块(subprocess) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. subproces基本上就是为了取代os.system和os.spaw ...

  2. python之模块调用

    1.以 atm_run 为入口,在atm中的main模块调用config中的settings from config import settings 2.以atm_run为入口,在main中调用log ...

  3. python selenium模块调用浏览器的时候出错

    python selenium模块使用出错,这个怎么改 因为不同版本更新不同步问题,浏览器都要另外下一个驱动.

  4. Python中模块调用说明

    1 import test # 导入test模块 2 3 print(test.a) # 使用"模块.变量"调用模块中的变量 4 5 test.hi() # 使用"模块. ...

  5. Python模块调用方式详解

    Python模块调用方式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其 ...

  6. Python多层目录模块调用

    一. 引用模块在 父+级目录中: 1. 将导入模块所在目录(../model/模块)添加到系统环境变量path下,可添加多个 import syssys.path.append("../mo ...

  7. python常见函数以及模块调用

    1.常用函数区别 print: 在python3.0中print是函数,这意味着需要编写print(A )而不是print A str()和repr()的区别 >>>print st ...

  8. Python 模块调用的变量与路径

    自己编写的python代码经常需要分模块文件以及包,梳理一下调用顺序.执行顺序.工作路径.函数与变量等 工作路径 首先是工作路径,当模块代码放在统一的包内的时候,其路径和外层的包路径不同,当作为主调用 ...

  9. (转载)Python 的 JPype 模块调用 Jar 包

    Python 的 JPype 模块调用 Jar 包 背景与需求 最近学习并安装使用了HttpRunner框架去尝试做接口测试,并有后续在公司推广的打算. HttpRunner由Python开发,调用接 ...

随机推荐

  1. VB中将INT型转换成STRING和从STRING转换成INT型的函数

    CStr 函数示例本示例使用 CStr 函数将一数值转换为 String. Dim MyDouble, MyStringMyDouble = 437.324   ' MyDouble 为 Double ...

  2. PHP MySQL 连接数据库

    PHP连接MySQL的小实例 <?php  /*时间:2014-09-14  *作者:葛崇  *功能:PHP连接MySQL小实例  * */ /* SQL 脚本.直接贴到命令行运行. DROP  ...

  3. shell之“>/dev/null 2>&1”

    shell之“>/dev/null 2>&1” http://ixdba.blog.51cto.com/2895551/526442 今天在自己的一个技术群中又被问道了这么一个问题 ...

  4. putty简单使用

    一.Putty简介 Putty是一款轻便的远程登录工具,用它可以非常方便的登录到Linux服务器上进行各种操作(命令行方式).Putty完全免费,而且无需安装(双击即可运行),支持多种连接类型(Tel ...

  5. PmException--- SQL(统计报表)

    select TAGS,GROUP_CONCAT(TAGS) t from EXCEPTION_RESULT e,PM_TASK t ' and t.OWNER='admin' group by TA ...

  6. Oracle自治事务实际用例

    如下,新建两个存储过程: 在主自治事务中,我们插入一条记录,然后在自治事务中,查看表中行数,然后尝试插入三条记录,查看行数,最后rollback 查看行数,最后返回主事务,查看行数. 1.如下代码: ...

  7. springmvc注解和参数传递

    一.SpringMVC注解入门 1. 创建web项目2. 在springmvc的配置文件中指定注解驱动,配置扫描器 <!-- mvc的注解驱动 --> <mvc:annotation ...

  8. 【LeetCode】46. Permutations (2 solutions)

    Permutations Given a collection of numbers, return all possible permutations. For example,[1,2,3] ha ...

  9. 【js与jquery】jquery循环滚动新闻

    2.html代码: <h3>最新动态</h3> <div class="scrollNews" > <ul> <li>& ...

  10. RabbitMQ消息队列(五):Routing 消息路由 2[原]

    上一篇文章使用的是Direct的Exchange,但是没有指定Queue的名字,这样只能是先运行Consumer之后,Producer在运行发消息Consumer才能收到,否则先运行Producer发 ...