Python读取config.ini配置文件后字符串比较结果为False的问题
解决configparser读取配置后字符串比较不相等的问题
你遇到的问题核心是:configparser读取配置时会把值里的双引号原样保留。也就是说你读取到的my_label_name实际是'"eventName"'(带双引号的字符串),而你用来比较的是"eventName"(不带引号),两者自然不相等。
下面给两种实用的解决办法:
方法一:修改配置文件,去掉值的引号
直接把config.ini改成如下格式,让配置值本身不带引号:[LABEL] NAME = eventName这样读取后
my_label_name就是纯eventName字符串,直接比较会返回True。方法二:读取后手动去除字符串的引号
如果不想改动配置文件,可以在读取后对字符串做处理,去掉首尾的双引号:import configparser config = configparser.ConfigParser() config.read('config.ini') my_label_name = config['LABEL']['name'].strip('"') # 移除首尾的双引号 print(my_label_name == "eventName") # 现在会输出True要是值中间也有双引号需要移除,可以用
replace('"', ''),但这种情况要确保值本身的双引号确实是多余的。
内容的提问来源于stack exchange,提问作者armin
相关产品推荐
相关产品推荐

