zoukankan      html  css  js  c++  java
  • python 读写配置文件

    使用python读写配置文件,写个demo测试一下。

    #!/usr/bin/env python
    
    import os
    
    import ConfigParser
    
    # 如果文件不存在,就穿件文件。
    if os.path.isfile(os.getcwd() + '/sql.conf') == False:
        cfg = ConfigParser.ConfigParser()
        cfg.add_section('remote')                # 添加section
        cfg.set('remote', 'ip' ,'192.168.3.123')    # 添加字段
        cfg.set('remote', 'port' ,'40949')
        cfg.set('remote', 'user' ,'tony')
        cfg.set('remote', 'password' ,'tony')
        cfg.set('remote', 'table' ,'real_tabel')
    
        cfg.add_section('localhost')
        cfg.set('localhost', 'ip' ,'127.0.0.1')
        cfg.set('localhost', 'port' ,'3306')
        cfg.set('localhost', 'user' ,'root')
        cfg.set('localhost', 'password' ,'root')
    
        cfg.add_section('interval')
        cfg.set('interval', 'heartbeat', '1')
        cfg.set('interval', 'upload_data', '5')
    
        cfg.write(open(os.getcwd() + '/sql.conf', 'w+'))
    
    # 文件存在就打印出来
    else:
        cfg = ConfigParser.ConfigParser()
        cfg.read(os.getcwd() + '/sql.conf')
        print cfg.items('remote')    # 获取remote中的所有内容,返回字典。
        print cfg.get('remote', 'ip')    # 获取remote中,ip的值
        print cfg.getint('remote', 'port')    # 获取remote中,port的值,并转为int型
        print cfg.get('remote', 'user')
        print cfg.get('remote', 'password')
        print cfg.get('remote', 'table')
    
        print cfg.items('localhost')
        print cfg.get('remote', 'ip')        
        print cfg.getint('remote', 'port')
        print cfg.get('remote', 'user')
        print cfg.get('remote', 'password')
    
        print cfg.items('interval')
        print cfg.get('interval', 'heartbeat')
        print cfg.get('interval', 'upload_data')
    

    第一次运行创建文件

    [remote]
    ip = 192.168.3.123
    port = 40949
    user = tony
    password = tony
    table = real_tabel
    
    [localhost]
    ip = 127.0.0.1
    port = 3306
    user = root
    password = root
    
    [interval]
    heartbeat = 1
    upload_data = 5
    

    第二次输出结果。

    [('ip', '192.168.3.123'), ('port', '40949'), ('user', 'tony'), ('password', 'tony'), ('table', 'real_tabel')]
    192.168.3.123
    40949
    tony
    tony
    real_tabel
    [('ip', '127.0.0.1'), ('port', '3306'), ('user', 'root'), ('password', 'root')]
    192.168.3.123
    40949
    tony
    tony
    [('heartbeat', '1'), ('upload_data', '5')]
    1
    5
    

    Tony Liu

    2017-6-9, Shenzhen

  • 相关阅读:
    蚂蚁金服SOFAMesh在多语言上的实践
    2018第48周日
    git只拉取github部分代码的方法
    深入理解brew link命令
    openssl/ssl.h file not found
    react热加载失败
    pycharm批量清楚pyc、$py.class文件
    Hash history cannot PUSH the same path; a new entry will not be added to the history stack
    JavaScript indexOf() 方法,获取元素的位置;Object.keys()获取对象的所有key的数组
    JavaScript删除数组里的某个元素
  • 原文地址:https://www.cnblogs.com/helloworldtoyou/p/6973386.html
Copyright © 2011-2022 走看看