概述
一开始python3.6读取配置文件的时候一直在报错,找不到原因,有的时候是读取的文件为空 有的时候读取的报错,后来终于把这个问题给解决了,请参考以下具体实例:
配置文件:
[DEFAULT]
loginPage.frame=id>x-URS-iframe
loginPage.username=xpath>//input[@name=‘email’]
loginPage.password=xpath>//input[@name=‘password’]
loginPage.loginbutton=id>dologin
loginPage.passwordlogin=id>passwordlogin
homePage.addressbook=xpath>//div[text()=‘通讯录’]
addContactsPage.createContactsBtn=xpath>//span[text()=‘新建联系人’]
addContactsPage.contactPersonName=xpath>//a[@title=‘编辑详细姓名’]/preceding-sibling::div/input
addContactsPage.contactPersonEmail=xpath>//[@id=‘iaddress_MALL_wrap’]//input
addContactsPage.starContacts=xpath>//span[text()=‘设为星标联系人’]/preceding-sibling::span/b
addContactsPage.contactPersonMobile=xpath>//[@id=‘iaddress_MALL_wrap’]//dd//input
addContactsPage.contactPersonComment=xpath>//textarea
addContactsPage.savecontacePerson=xpath>//span[.=‘确定’]
#定义126mail_login分组
[mail_login]
loginPage.frame=id>x-URS-iframe
loginPage.username=xpath>//input[@name=‘email’]
loginPage.password=xpath>//input[@name=‘password’]
loginPage.loginbutton=id>dologin
loginPage.passwordlogin=id>passwordlogin
[126mail_homePage]
homePage.addressbook=xpath>//div[text()=‘通讯录’]
[126mail_addContactsPage]
addContactsPage.createContactsBtn=xpath>//span[text()=‘新建联系人’]
addContactsPage.contactPersonName=xpath>//a[@title=‘编辑详细姓名’]/preceding-sibling::div/input
addContactsPage.contactPersonEmail=xpath>//[@id=‘iaddress_MALL_wrap’]//input
addContactsPage.starContacts=xpath>//span[text()=‘设为星标联系人’]/preceding-sibling::span/b
addContactsPage.contactPersonMobile=xpath>//[@id=‘iaddress_MALL_wrap’]//dd//input
addContactsPage.contactPersonComment=xpath>//textarea
addContactsPage.savecontacePerson=xpath>//span[.=‘确定’]
解释:
- 中括号[]里面的内容称为section,翻译为:节,区,段。
- 每一个section内,都是key=value形成的键值对,key称为option选项
- 注意:DEFAULT是缺省的section的名字,必须大写。当section中没有找到对应的键值对时,默认会从DEFAULT中寻找,如果都没有就找不到。
python3.6读取配置文件的实例代码:
import unittest
from configparser import ConfigParser
class ParseConfigFile(object):
def init(self):
#实例化配置文件对象
self.cf=ConfigParser()
self.cf.read(“D:pythonworkspaceDataDrivenFrameWorkconfigPageElementLocator.ini”,encoding=“utf-8”)#python3.6中直接读取文件名字即可,需要注意的是:如果你的配置文件和python文件不再同一个file中,此路径为绝对路径,反之,相对路径
print(self.cf.sections())
def getSections(self,sectionName):
self.cf.items(sectionName)
option=self.cf.items(sectionName)
#获取配置文件中指定section下的所有option键值对,并以字典类型返回给调用者
return dict(option)
def get_value(self,sectionName,optionName):
#获取指定section下的指定option的值
value=self.cf.get(sectionName,optionName)
return value
‘’’# 实例化配置文件对象,测试一下,请忽略
cf = ConfigParser()
cf.read(“D:pythonworkspaceDataDrivenFrameWorkconfigPageElementLocator.ini”,encoding=“utf-8”) # python3.6中直接读取文件名字即可
print(cf.sections())’’’
if name == ‘main’:
pc=ParseConfigFile()
#print(pc.getSections(“mail_login”))
print(pc.get_value(“mail_login”,‘loginPage.username’))
希望可以帮助到你!!!
最后
以上就是活力凉面为你收集整理的【错】如何使用Python3读写INI配置文件时报错的全部内容,希望文章能够帮你解决【错】如何使用Python3读写INI配置文件时报错所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复