• Python--toml配置文件


    前言

    因为语雀的更新,普通用户已经无法分享了,所以在此告诉大家一声!

    toml配置文件,

    推荐指数:⭐⭐⭐⭐⭐

    pip install toml
    
    • 1

    创建.toml文件

    创建一个文本,将后缀改为toml或者tml即可:

    图片

    它的写法跟ini配置文件类似,读取跟json类似,书写的内容又与Yaml也有近似,一起看看:

    先看个例子

    [mysql]
    host     = "localhost"
    user     = "root"
    port     = 3306
    database = "an"
    password = "jiang"
    
      [mysql.parameters]
      pool_size = 5
      charset   = "utf8"
    
      [mysql.fields]
      pandas_cols = [ "id", "name", "age", "date"]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    「注意格式,上述写法皆是以字典为主,其中有列表嵌套」

    读取toml文件

    import toml
    
    cfg = toml.load('config,toml')
    print(cfg)
    
    # {'mysql': {'host': '127.0.0.1', 'user': 'root', 'port': 3306, 'database': 'test', 'parameters': {'pool_size': 5, 'charset': 'utf8'}, 'fields': {'pandas_cols': ['id', 'name', 'age', 'date']}}}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    「非常的便捷是不是」

    还是以MySQL为例子

    host     = "localhost"
    user     = "root"
    port     = 3306
    database = "an"
    password = "jiang"
    
    • 1
    • 2
    • 3
    • 4
    • 5

    这里的password跟database根据自己实际的填写,password就是自己的MySQL链接的密码,databse就是数据库名字。

    读取toml文件

    记得严谨点封装,可以参考上述链接。此处就简略一些封装了。

    import toml
    
    def toml_read():
        cfg = toml.load('config,toml')
        return cfg
        
    tr = toml_read()
    print(tr)
    # {'mysql': {'host': 'localhost', 'user': 'root', 'port': 3306, 'database': 'an', 'password': 'jiang'}}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    「封装过程过于简陋,此处直接pass,后续会直接重点更新封装教程。」

    写入py文件

    「看了前面的文章,应该就知道了,这里其实没有太多的看点,主要就是调用即可,再者封装就看个人了。」

    import toml
    import pymysql
    
    def sql():
        # 数据库连接,主机host、端口port、用户名user、密码passwd、数据库表database
        con = pymysql.connect(host=tr['host'], port=tr['port'],
                              user=tr['user'], passwd=tr['password'],
                              database=tr['database'])  # 如果汉字显示不出来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()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    小结

    「使用toml作为配置文件还是比较推荐的,众所周知,字典取值还是比较方便的,而toml恰巧可以,且书写方便,Yaml需要注意指定格式,一不小心就会写错,而toml恰巧可以解决这一点。」


    资源分享

    下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    【论文阅读】DynaPosGNN: Dynamic-Positional GNN for Next POI Recommendation
    C++的指针简明教程
    金仓数据库 KingbaseES PL/SQL 过程语言参考手册(16. A PL/SQL源文本加密)
    SpringBoot项目调用Matlab方法
    在网络中加入新的模块时,有办法不影响原来的网络层次名字吗
    普洱茶上市?澜沧古茶通过港股聆讯
    铅华洗尽,粉黛不施,人工智能AI基于ProPainter技术去除图片以及视频水印(Python3.10)
    为什么要打日志?怎么打日志?打什么日志?
    SpringBoot配置Swagger3,解决报错信息
    RabbitMQ
  • 原文地址:https://blog.csdn.net/wx17343624830/article/details/127560019