configparser.NoSectionError: No section:*****報錯原因及解決方法


今晚在練習PO模式的時候,碰到了一個我之前沒有碰到過的問題,寫讀取配置文件的方法的時候,報錯:configparser.NoSectionError: No section:******;

后來百度的時候,找到了解決方法。

首先分析下原因:

很有可能是因為沒有讀取到 onfig.ini 文件,盡量把文件設置成.txt格式的。

文件路徑不對,沒有正確讀取。原因主要還是文件的路徑問題。

 

解決方法:

我之前是這樣寫的:

import configparser

def read_inis(self):
  filepath='E:/pythonProject/xiangmu3/configss/inst'
  conf=configparser.Configparser()
  conf.read(filepath,encoding="utf-8")
  return conf

讀取時就報錯:configparser.NoSectionError: No section:*****

后來修改為:
import os,
import configparser
def read_inis(self):
parent_dir = os.path.dirname(os.path.abspath(__file__))
conf=configparser.ConfigParser()
conf.read(os.path.join(parent_dir ,'E:/pythonProject/xiangmu3/configss/inst'),encoding="utf-8")
return conf
這樣修改后,就能正確的讀取配置文件中的內容了。

首先我們不能使用相關路徑或者絕對路徑的方式,這種方式只對特定的路徑有效,也就是你程序寫死了。

有效的解決思路是找到你文件的絕對路徑,在代碼中用全局變量記錄下來,其他部分在此基礎上進行本機或者上下級目錄等操作。
 
        
 
        

"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM