pyhton 关于 configparser 配置 模块 实践使用中碰到的坑
今天做一个ATM的练习,想要用configparser模块,写一个配置文件,存放用户信息。
结果状况连连,叫苦不迭。
我用configparser模块,想要对配置文件,进行读、写、改、查 功能。
其中 写 功能 和 读 功能 根据视频教程里教的,都没有出什么大问题。
写:
# coding=gbk
import os,json,sys
import configparser
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR) #初始化用户信息(包括:银行管理账户,商城用户账户,信用卡用户账户)
a=configparser.ConfigParser()
a['DEFAULT']={
'默认':''
}
a['商城用户']={
'uid':'张三',
'pwd':''
}
a['银行root']={
'uid':'root',
'pwd':''
}
a['信用卡用户1']={
'uid':'user1',
'pwd':'',
'存款':'',
'额度':'',
'冻结':'False'
}
a['信用卡用户2']={
'uid':'user2',
'pwd':'',
'存款':'',
'额度':'',
'冻结':'False'
}
with open(BASE_DIR + os.sep + 'conf' + os.sep + '用户信息.ini','w') as b:
a.write(b)
读:
a = configparser.ConfigParser()
a.read(BASE_DIR + os.sep + 'conf' + os.sep + '用户信息.ini')
改:!!!!重大注意!!!
a = configparser.ConfigParser()
a.read(BASE_DIR + os.sep + 'conf' + os.sep + '用户信息.ini')
a.set(x, '冻结', 'False')
with open(BASE_DIR + os.sep + 'conf' + os.sep + '用户信息.ini', 'w')as f:
a.write(f)
增:!!!!重大注意!!!!
a=configparser.ConfigParser()
a.read(BASE_DIR+os.sep+'conf'+os.sep+'用户信息.ini')
a.add_section(x)
a.set(x,'uid',y)
a.set(x,'pwd',z)
a.set(x,'存款','')
a.set(x,'额度','')
a.set(x,'冻结','False')
with open(BASE_DIR+os.sep+'conf'+os.sep+'用户信息.ini','w')as f:
a.write(f)
一定要注意两点,第一:每一次增和改操作,都要用一次读和一次写夹住。第二:不论是键还是值,都必须要是字符串类型,不然会报错!
视频教程中,讲师为了吹python的强大程度,说pyhton中的配置文件跟字典基本一样,让人听了很容易混淆!
其实配置文件跟字典的差别还是很大的!跟普通文件也不一样!
今天因为这两点,卡了我一整天,真是郁闷死啦!
pyhton 关于 configparser 配置 模块 实践使用中碰到的坑的更多相关文章
- Python-selenium,使用SenKey模块时所碰到的坑
一.SenKey模块(模拟鼠标键盘操作) :python3中没有该模块,使用PyUserInput模块代替 二.PyUserInput模块安装前需要安装:pywin32和pyHook模块,pywin3 ...
- cordova + ionic 使用中碰到的一些问题
cordova + ionic 使用中碰到的一些问题 No Content-Security-Policy meta tag found. Please add one when using ...
- Abp通用配置模块的设计
引言 约定优于配置,配置趋于灵活 约定优于配置(convention over configuration),也称作按约定编程,是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处, ...
- vagrant 虚拟机配置最佳实践
Mac VirtualBox Vagrant 管理虚拟机 这篇文章定位是在理解了 vagrant 相关概念之后,教你如何灵活玩转自己的虚拟机配置 本文为 @favoorr 常用的 Mac Virtua ...
- Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践
Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践 编码转换问题(主要就是中文乱码) (1)input 中的cod ...
- 如何让HTTPS站点评级达到A+? 还得看这篇HTTPS安全优化配置最佳实践指南
0x00 前言简述 SSL/TLS 简单说明 描述: 当下越来越多的网站管理员为企业站点或自己的站点进行了SSL/TLS配置, SSL/TLS 是一种简单易懂的技术,它很容易部署及运行,但要对其进行安 ...
- atitit.spring3 mvc url配置最佳实践
atitit.spring3 mvc url配置最佳实践 1. Url-pattern bp 1 2. 通用星号url pattern的问题 1 3. Other code 1 4. 参考 2 1. ...
- Thinkphp3.2———配置模块
一.配置格式 Thinkphp框架中的所有配置都是数组形式定义的的格式为: //项目配置 return array( 'DEFAULT_MODULE'=>'Index',//默认模块 'URL_ ...
- Spring Boot 揭秘与实战 自己实现一个简单的自动配置模块
文章目录 1. 实战的开端 – Maven搭建 2. 参数的配置 - 属性参数类 3. 真的很简单 - 简单的服务类 4. 自动配置的核心 - 自动配置类 5. spring.factories 不要 ...
随机推荐
- 【NOIP模拟】的士碰撞(二分答案)
Description
- 80端口被系统服务【kernel&System】占用解决方案
netstat -ano | findstr port //查看端口占用情况 tasklist | findstr port //查看端口被占用的具体服务名 运行net stop http ...
- PHP二分查找算法
思路:递归算法.在一个已经排好序的数组中查找某一个数值,每一次都先跟数组的中间元素进行比较,若相等则返回中间元素的位置,若小于中间元素,则在数组中小于中间元素的部分查找,若大于中间元素,则在数组中大于 ...
- 【原创】基于禅道的Bug管理操作规范
1. 禅道简介 禅道是一个基于"敏捷开发"模式的软件开发全生命周期管理软件,在国内的软件开发公司里占据了超过70%的份额,从大公司到小公司,都能适用. 禅道官网:http://ww ...
- 聊聊Java的字节码
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 巴山楚水凄凉地,二十三年弃置身.怀旧空吟闻笛赋,到乡翻似烂柯人.沉舟侧畔千帆过,病树前头万木春 ...
- [PGM] Bayes Network and Conditional Independence
2 - 1 - Semantics & Factorization 2 - 2 - Reasoning Patterns 2 - 3 - Flow of Probabilistic Influ ...
- SQL语句查询表中的所有约束
select * from sysobjects where parent_obj in(select id from sysobjects where name='表名') 或者 exec sp_h ...
- MFC属性表单修改“应用”键名并对其响应
1.重载CPropertySheet的虚函数OnInitDialog(),添加如下代码 BOOL DialogInputData::OnInitDialog() { BOOL bResult = CP ...
- 1026: [SCOI2009]windy数
1026: [SCOI2009]windy数 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 8247 Solved: 3708[Submit][Sta ...
- 【开源】【前后端分离】【优雅编码】分享我工作中的一款MVC+EF+IoC+Layui前后端分离的框架——【NO.1】框架概述
写博客之前总想说点什么,但写的时候又忘了想说点什么,算了,不说了,还是来送福利吧. 今天是来分享我在平时工作中搭建的一套前后端分离的框架. 平时工作大多时候都是在做管理类型的软件开发,无非就是增.删. ...