我之前处理数据的时候,一直用open+split,取字符串序号(别笑)
file=open('1.log','r')
data=file.read()
data=data.split("\n")
# 想要第三个参数的话:
l3=data[2]
上网查,参数通常参数用ini保存。
现在用得少(因为不保密)
TIP:红警、骑砍这两个配置文件的ini是明码写在系统里的。
现在比较推荐用键值……
但是我自己的话,因为没有啥可以保密的,就直接用ini了。
————————————————————————————
上网查,python有一个模块configparser。
然后,这个键值有这几个问题:
import configparser
conf = configparser.ConfigParser()
conf.read(file_path, encoding='utf-8')
conf.set(section, '%','%11')
当场报错。
也就说说:configparser读取到%的时候会报错。
网上查询,网络上有解决方案:修改configparser的安全协议。(因为是开源的)
不想改……
然后第二个问题:不识别大小写。大小写默认会转化为小写……
我勒了去……
# 提前创建d1文件
import configparser
conf = configparser.ConfigParser()
conf.read(file_path, encoding='utf-8')
conf.set(section, 'file','C:\\D1.txt')
# 然后从configparser读取该键值
file.open(file,'r')
也报错,提示没有d1.txt,大小写不分……
这也太拉了,生产队的驴也不敢这么拉。用了configparser,就不能读大写了?
_________________________________
然后上网查,configobj可以识别大小写。
TIP:python3自带configparser,但是不带configobj。
直接pip install configobj。
整个模块大概不到200k,可以接受(pandas300M太大了)
然后配置键值
import configobj
config = configobj.ConfigObj('passwd.ini')
config['passwd']={}
config['passwd']['user']="%%%%E1"
可以读取大小写,也可以读取%,稳定不报错。
good。
配置键值:
import configobj
config = configobj.ConfigObj('passwd.ini')
config['passwd']={}
config['passwd']['user']="E1"
config.write()
即可写入和修改键值
读取键值
import configobj
config = configobj.ConfigObj('passwd.ini')
user = config['passwd']['user']
print(user)
成功获取。
配置一个文件(比如passwd.ini)
然后在GIT上配置.gitignore,写入/passwd.ini。
即可不上传保密。
网上有说用json串的。我看了看,和ini是一个模子刻出来的。基本上逻辑应该是完全一致的。
——————————————————————
2.24更新:
configobj不支持中文,是以ascii码保存文件的。
当储存中文的时候,会报错:无法储存ascii。