我现在有一段python代码,功能是写ini文件:
cfp = configparser.ConfigParser()
fp = open(file_path, 'r+')
cfp.read(file_path)
cfp.set('BACpypes', 'foreignBBMD', '20')
cfp.set('BACpypes', 'foreignTTL', '30')
cfp.write(fp)
fp.close()
但是写的ini文件中,最后会多出一行"TTL = 30"
[BACpypes]
foreignbbmd = 20
foreignttl = 30
TTL = 30
问题出现在 ini 文件中的键(Key)的大小写不一致。在配置文件中,键是大小写敏感的。
在我的代码中,使用了 cfp.set() 方法来设置键值对。然而,键 “foreignTTL” 在 ini 文件中被写为 “foreignttl”,这导致 cfp.write() 方法在写入 ini 文件时创建了额外的键 “TTL”。
将写入ini文件是的key统一设置为小写,即可解决这个问题
cfp = configparser.ConfigParser()
fp = open(file_path, 'r+')
cfp.read(file_path)
cfp.set('BACpypes', 'foreignbbmd', '20')
cfp.set('BACpypes', 'foreignttl', '30')
cfp.write(fp)
fp.close()