前言
这里是清安,断更了很久。主要是写语雀笔记去了,感兴趣的可以去看看:https://www.yuque.com/qinganwubieshi
「接下来会持续更新一些在自动化过程中的一些参数化操作/配置文件操作等」
你知道配置文件的好处吗?
在这里简单的说一下:
你是否还在将值写死,无法做到灵活变动。
你是否还在将一个个配置参数写成固定值,而后需要变动的时候疯狂的找py文件然后CV。
「本章就来教你其中一个方法,不论时本章,还是往后的内容,对你或多或少都有一定的帮助。」
ini配置文件
推荐指数:⭐⭐
创建.ini文件
创建一个普通的文件,后缀改成.ini即可。
写入内容
以MySQL为例子
[SQL] host: localhost port: 3306 user: root password: qingan database: an
这里的password跟database根据自己实际的填写,password就是自己的MySQL链接的密码,databse就是数据库名字。
不写配置文件的一般写法
import pymysql # 数据库连接,主机host、端口port、用户名user、密码passwd、数据库表database con = pymysql.connect(host='localhost', port=3306, user='root', passwd='qingan', database='an')#如果汉字显示不出来charset=‘utf-8' # 生成游标 cur = con.cursor() # 注入sql语句 sql = 'select * from login_user;' # 游标执行一条sql语句 res = cur.execute(sql) # 获取查询结果,获取一条数据 data_1=cur.fetchone() print(data_1) con.commit() # 关闭游标 cur.close() # 关闭数据库连接 con.close()
再稍微好点的会把参数提取出来放在main执行入口处写。此处就不展示了。在语雀中有写详细操作。
配置文件的写法
import pymysql import configparser def iniconfig(key='SQL', path='./config.ini'): con = configparser.ConfigParser() con.read(path, encoding='utf-8') host = con.get(key, 'host') port = con.get(key, 'port') user = con.get(key, 'user') passwd = con.get(key, 'password') database = con.get(key, 'database') return host, int(port), user, passwd, database def sql(): # 数据库连接,主机host、端口port、用户名user、密码passwd、数据库表database con = pymysql.connect(host=iniconfig()[0], port=iniconfig()[1], user=iniconfig()[2], passwd=iniconfig()[3], database=iniconfig()[4]) # 如果汉字显示不出来charset=‘utf-8' # 生成游标 cur = con.cursor() # 注入sql语句 sql = 'select * from login_user;' # 游标执行一条sql语句 res = cur.execute(sql) # 获取查询结果,获取一条数据 data_1 = cur.fetchone() print(data_1) con.commit() # 关闭游标 cur.close() # 关闭数据库连接 con.close() if __name__ == '__main__': sql()
「是不是觉得,看着是简洁了一些,但是,代码量大了不少,实用性不大。并且,读取出来的都是字符串,即使你写入的是一个数字或者布尔值,读取出来的都是字符串。」
「但是不得不说的是,后续如果MySQL变更密码或者切换账号的时候,只需要改一下ini文件即可」
当然,要解决上述参数麻烦的情况,还是可以整的,不过如果这样的想法,还不如换一种配置文件,更加的简洁省事。(后续更新!)