<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] ## 模塊說明 ### 作用 configparser模塊用于生成和修改常見配置文檔,下面是一個常見的cnf格式配置文件,就可以用本模塊生成或讀取 ### 常見配置文件格式 kv格式支持兩種語法,等號或冒號,如a=1或a:1 ```cnf [DEFAULT] user=mysql [mysqld] server-id=11 port=3306 [dev] home=/home/ user=dev [pro] home=/data/ ``` 如上的配置文件,使用configparser模塊讀取時,會將每一個中括號就是一個key,但默認不會顯示**DEFAULT**塊中的內容,即只顯示[mysqld,dev,pro], 但**DEFAULT**塊中的內容會加入到每一個key中(前提是當前key中沒有該內容) ### 模塊功能列表 * read(filename) 讀取配置文件,直接讀取ini文件內容 * sections() 獲取ini文件內所有的section,以列表形式返回['logging', 'mysql'] * options(sections) 獲取指定sections下所有options ,以列表形式返回['host', 'port', 'user', 'password'] * items(sections) 獲取指定section下所有的鍵值對,[('host', '127.0.0.1'), ('port', '3306'), ('user', 'root'), ('password', '123456')] * get(section, option) 獲取section中option的值,返回為string類型 * getint(section,option) 返回int類型 * getfloat(section, option) 返回float類型 * getboolean(section,option) 返回boolen類型 ## 模塊演示 ### 模塊導入 由于本模塊名較長,一般都通過生成對象的方式引用 ```python >>> import configparser >>> cf = configparser.ConfigParser() ``` ### 讀取配置 ``` >>> cf.read('test.ini') ['test.ini'] >>> cf.sections() ['mysqld', 'dev', 'pro'] ``` >注意讀取出來的sections中,不包含DEFAULT塊 ### 獲取key和值 常用的方法是`options`、 `ge`、`items` ``` >>> cf.options('pro') ['home', 'user'] >>> cf.get('dev','user') 'dev_user' >>> for key in cf['pro']:print(key) #for循環也可以 ... home use >>> cf.items('pro') #獲取kv鍵值對 [('user', 'mysql'), ('home', '/data/') >>> cf.items('dev') [('user', 'dev_user'), ('home', '/home/')] >>> cf['pro']['user'] #通過下標的形式取值 'mysql' ``` >注意由于pro塊中是沒有`user`的,所以獲取了`DEFAULT`中的`user`,但`dev`中自己就有`user`,獲取的就是自己的`user` ### 判斷key是否存在 ``` >>> 'dev' in cf True >>> 'devs' in cf False ``` ### 刪除配置 * 刪除值 ``` >>> cf.options('pro') ['home', 'user'] >>> cf.remove_option('pro','user') False #錯誤原因是因為user是從DEFAULT中繼承而來的 >>> cf.remove_option('pro','home') True ``` * 刪除key ``` >>> cf.sections() ['mysqld', 'dev', 'pro'] >>> cf.remove_section('pro') True >>> cf.sections() ['mysqld', 'dev'] ``` ### 增加配置 ``` >>> cf.sections() ['mysqld', 'dev'] >>> cf.has_section('pro') False >>> cf.add_section('pro') >>> cf.sections() ['mysqld', 'dev', 'pro' >>> cf.set('pro','name','root') >>> cf.get('pro','name') 'root' ``` ### 修改配置 ``` >>> cf.get('dev','user') 'dev_user' >>> cf.set('dev','user','nginx') >>> cf.get('dev','user') 'nginx' ``` ### 將修改回寫到配置文件 ``` cf.write(open('test.ini','w')) ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看