问题引出

当我们程序中要用到账号,密码等一些敏感信息时,别人一眼就能看得到这些信息的时候,该怎么操作才能避免敏感信息被泄露呢?对了,我们不妨把信息写到文件里,通过获取文件中设定好的数据来起到数据保密的做用。

这里我推荐使用ini文件和yaml文件读取。

ini文件

在ini文件中,每一部分以[section]开始 option=value结尾;备注以;开头;section不可重名。

1.1 文件编写(.ini)

[redis]
host=127.0.0.1
port = 6379[user]
name = xxxx
password = 123456

这里我们以redis数据库为例,可以把name和password写入到文件中。

1.2 文件读写

ConfigParser 是用来读取配置文件的包
import configparser
# 读取
cf = configparser.ConfigParser()
cf.read("base.ini")
secs=cf.sections()    # 获得所有区域
print(secs)  # ['redis', 'user']opts=cf.options("user")
print(opts)  # ['name', 'password']items = cf.items("user")
print(items) # [('name', 'feier'), ('password', '123456')]val=cf.get("user","name")
print(val)  # feier#打印出每个区域的所有属性
for sec in secs:# ['host', 'port']  ['name', 'password']print(cf.options(sec),type(cf.options(sec)))

这样是不是对于敏感信息的使用更加安全呢?

yaml文件

安装

pip install pyyaml

简介

yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文件,看了yaml后,发现这个更直观,更方便,有点类似于json格式。

2.1 yaml基本语法规则

  • 大小写敏感

  • 使用缩进表示层级关系

  • 缩进时不允许使用Tab键,只允许使用空格。

  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

  • #表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和python的注释一样

2.2 yaml支持的数据结构有三种

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)

  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)

  • 纯量(scalars):单个的、不可再分的值。字符串、布尔值、整数、浮点数、Null、时间、日期

2.3 文件编写(.yaml)

data: 信息user:name: 菲菲age: 18hobby:- a: 干饭b: 煲剧- c: 刷抖音d: 看微博

在线转换格式:YAML parser for JavaScript - JS-YAML

转换为json格式如下

{ data: '信息',user: { name: '菲菲', age: 18 },hobby: [ { a: '干饭', b: '煲剧' }, { c: '刷抖音', d: '看微博' } ] }

可以把它当作json格式来看,这样在下面的文件读取更方便使用。

2.4 文件读取

import pyyaml
with open('base.yaml',encoding='utf8') as f:config = yaml.safe_load(f.read())print(config.get('data'))print(config.get('user'))print(config.get('hobby'))

【python文件读取】加密数据的读取相关推荐

  1. python读文件每一行-Python文件内容按行读取到列表中

    Python文件内容按行读取到列表中 示例文件内容如下: Hello World Python 通常来讲,我们如果只是迭代文件对象每一行,并做一些处理,是不需要将文件对象转成列表的,因为文件对象本身可 ...

  2. python如何读写文件-python文件的写入和读取

    1.txt,xls,doc等文件的使用 f=open("filename","w") 打开一个用于写入的文件,要写入内容时使用f.write("内容& ...

  3. xml与python文件常用转换,读取图像

    文章目录 一.Python批量修改图片文件名和xml文件信息 二.python获取图像名称保存成一个txt文件 三.xml格式的label转换为yolo-darknet版的label 四.使用pyth ...

  4. python设置ini文件中的值_PyCharm设置python文件模板,自动读取文件信息。

    #!/usr/bin/env python # -*- coding:utf-8 -*- '''================================================= @P ...

  5. python seek到指定行_python文件操作seek()偏移量,读取指正到指定位置操作

    python 文件操作seek() 和 telll() 自我解释 file.seek()方法格式: seek(offset,whence=0) 移动文件读取指针到制定位置 offset:开始的偏移量, ...

  6. 不是python文件处理seek()方法的参数是_python文件操作seek()偏移量,读取指正到指定位置操作...

    python 文件操作seek() 和 telll() 自我解释 file.seek()方法格式: seek(offset,whence=0) 移动文件读取指针到制定位置 offset:开始的偏移量, ...

  7. python 文件追加写入_Python写入文件–解释了打开,读取,追加和其他文件处理功能

    python 文件追加写入 欢迎 (Welcome) Hi! If you want to learn how to work with files in Python, then this arti ...

  8. C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结。

    C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结. 一.总结 C++/Php/Python/Shell 程序按行读取文件或者控制台(php读取标准输入:$fp = fope ...

  9. windows下python使用fllow扩展持续读取文件的bug

    文章目录 一.前言 二.读取fllow源码 1.fllow读取文件代码 2.跟踪new_file_check 函数 3.python的stat函数 4.分析出错代码 三.windows下对比inode ...

  10. python读取txt文件乱码-python文件乱码

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 原文地址:http:www.zisexinghen.cnlikeshare322. ...

最新文章

  1. 驾驭白夜场景、刷新多个SOTA,高效提升多目标追踪与分割
  2. 在OpenCV中图像边界扩展 copyMakeBorder 的实现
  3. java 实现微博,QQ联合登录
  4. LINUX下动态链接库的使用-dlopen dlsym dlclose dlerror
  5. IOC操作Bean管理XML方式(xml自动装配)
  6. Android中PackageManager类的简单介绍
  7. 使用multiprocessing时的DictProxy object, typeid 'dict' at ; '__str__()' failed
  8. python2.7安装pygame_python 安装 pygame了
  9. U盘autorun病毒清理
  10. 原理解析 | Apache Flink 结合 Kafka 构建端到端的 Exactly-Once 处理
  11. sprinboot打包jar后读取不到/resource/data/ip2region.xdb的文件.
  12. java中乘法计算的三种方式 位运算中的另一种运算 — 左移运算
  13. 关于Nginx mmap(MAP_ANON|MAP_SHARED, 314572800)报错
  14. CSDN ARIMA R语言_R语言时间序列:ARIMA / GARCH模型的交易策略在外汇市场预测应用...
  15. 什么从什么写短句_什么从什么造句一年级如何造
  16. awd——waf部署
  17. 游戏开发中的数学和物理算法10-18
  18. 混合罚函数法matlab报错,罚函数法MATLAB程序
  19. 自回避随机行走问题 c语言,醉汉随机行走/随机漫步问题(Random Walk Randomized Algorithm Python)...
  20. python 编程基础案例

热门文章

  1. UE4 材质 溶解材质
  2. 动态规划法和贪心算法
  3. UART BootROM
  4. 第五届“飞思卡尔”智能车竞赛分赛区赛后总结
  5. 小样本学习数据集||Omniglot和miniImagenet||MAML算法测试
  6. 国内外常用学术网站(访问不了“谷歌学术”的,试一试有惊喜哦)
  7. 赛孚耐SafeNet宏狗GrandDog微狗MicroDog加密狗复制破解路径
  8. 2018年7月北航举办软件工程师师资培训札记
  9. C语言生成0-9的6位数密码递归方法实现
  10. 什么是最容易涨粉的短视频,拍什么短视频最吸粉