学习日记0813常用模块configparser,shelve,hashlib,xml

configparser模块

  什么是configparser模块

    用于解析配置文件 后缀为 ini或者cfg

  怎么用configparser模块

    查看配置文件中的内容

1 import configparser
2     cfg = configparser.ConferParser()
3     cfg.read(‘文件路径‘,encoding=‘utf-8‘)
4     print(cfg.sections())
5     print(cfg.options(‘section名‘))

    修改配置文件中的内容

 import configparser
     cfg = configparser.ConferParser()
     cfg.read(‘文件路径‘,encoding=‘utf-8‘)
    cfg.set(‘sections‘,‘options‘,‘修改的内容‘)
    cfg.write(open(‘文件路径‘,‘w‘,encoding=‘utf-8‘))

shelve模块

  什么是shelve模块

    shelve也是系列化的一种,他内置就是picker模块

    它的存储成的格式为字典形式

  怎么使用shelve模块

    序列化

import shelve
    sh = shelve.open(‘文件路径‘)
    sh[‘name‘] = ‘beard‘
    sh.close()

    反序列化

import shelve
    sh = shelve.open(‘文件路径‘)
    print(sh.get(‘name‘))
    sh.close

hashlib模块

  什么是hash模块

    hash是一种加密的方式,它会将任意长度的数据加密成一个固定长度的数据

    常用的hash加密方式是MD5

  hash的特点:
    1.输入数据不同,得到的hash值有可能相同
    2.不能通过hash值来得到输入的值
    3.如果算法相同,无论输入的数据长度是多少,得到的hash值长度相同

  在python中使用hashlib加密数据

import hashlib
    md = hashlib.md5()
    md.update(‘加密的数据‘)
    sj = md.hexdigest()
    print(sj)

xml模块

xml全称:可扩展标记语言

  xml与json数据相似,都是用于序列化数据,和在不同的平台间传递数据的

   该语言的语法特点是

    1 xml使用标签的形式,每一个标签都必须成对出现

      <123></123>

      <123/>简化的写法

    2 标签必须顺序的嵌套

      <123>

        <456>

        </456>

      </123>

    3 特征必须都有值

      <123 name="456"/>

    4 必须使用的是""

  使用场景:

    1 配置文件

    2 不同平台间的数据交换

  在python中使用xml的方式

    

    ElmentTree 表示整个文件的元素树

    Elment 表示一个节点
     属性
      1.text 开始标签和结束标签中间的文本
      2.attrib 所有的属性 字典类型
      3.tag 标签的名字
    方法
      get 获取某个属性的值
    1.解析XML
      查找标签
        find 在子标签中获取名字匹配第一个
      findall 在子标签中获取名字匹配的所有标签
      iter(tagname) 在全文中查找[匹配的所有标签 返回一个迭代器
    2.生成XML
      用ElmentTree
        parse() 解析一个文件
        getroot() 获取根标签
        write() 写入到文件
    3.修改xml
      set 一个属性
      remove 一个标签
      append 一个标签

代码表示生成一个xml文件

import xml.etree.ElementTree as et
    root = et.Element(‘root‘)
    tl = et.ElementTree(root)
    persson = et.Element(‘persson‘)
    persson.attrib[‘name1‘] = ‘属性一‘
    persson.attrib[‘name2‘] = ‘属性二‘
    persson.text = ‘这是一个标签‘
    root.append(persson)
    tl.write(‘文件路径‘,encoding=‘utf-8‘,xml_declaration=True)

查看xml中的内容:

import xml.etree.ElementTree as et
    tree = et.parser(‘文件路径‘)
    root = tree.getroot()
    for i in root:
        print(i.text,i.tag,i.attrib)

在xml中添加内容,建立新的xml文件,删除内容,修改内容:

import xml.etree.ElementTree as et
# #先生成一个根标签
# root = et.Element(‘根标签‘)
# #再生成一个节点树
# tl = et.ElementTree(root)
# #再添加一个persson标签
# persson = et.Element(‘persson标签‘)
# #再设置persson标签的属性
# persson.attrib[‘name1‘] = ‘属性一‘
# persson.attrib[‘name2‘] = ‘属性二‘
# #再设置persson的内容
# persson.text = ‘标签的内容‘
# root.append(persson)
# # 最后再写入文件
# tl.write(‘lx.xml‘,encoding=‘utf-8‘,xml_declaration=True)
# #xml_declaration是否生成文件头
#将文件读入内存
tree = et.parse(‘lx.xml‘)
#获得根标签
root =tree.getroot()
# persson = root.find(‘persson标签2‘)
# persson.text = str(persson.text+‘123‘)    #修改文件
# root.remove(persson)#删除标签
new_persson = et.Element(‘persson标签3‘)
new_persson.attrib[‘age‘] = ‘123‘
new_persson.text = ‘123‘
root.append(new_persson)
tree.write(‘lx.xml‘,encoding=‘utf-8‘,xml_declaration=True)

原文地址:https://www.cnblogs.com/jianhaozhou/p/9469689.html

时间: 2024-11-04 02:24:08

学习日记0813常用模块configparser,shelve,hashlib,xml的相关文章

python学习笔记day5——常用模块学习

一.主要内容 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式 二.具体内容 1.模块 a.定义:本质就是.py结尾的python文件,逻辑上组织python代码,实现某种功能.例:文件名test.py-->模块名test. b.导入方法:imort moduname from mdn

Python常用模块-摘要算法(hashlib)

Python常用模块-摘要算法(hashlib) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MD5算法参数详解 1.十六进制md5算法摘要 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #@author :yinzhengjie 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%

python学习笔记(六):常用模块

一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包,package本质就是一个文件夹,和文件夹不一样的是它有一个__init__.py文件,包是从逻辑上来组织模块的,也就是说它是用来存放模块的,如果你想导入其他目录下的模块,那么这个目录必须是一个包才可以导入. 导入模块 1 2 3 4 5 import module #导入模块 from modul

Python学习笔记之常用模块

相关链接: 常用模块:http://blog.sina.com.cn/s/blog_44bac24d0100066h.html 常用模块一:https://www.cnblogs.com/gaoya666/p/8254179.html 原文地址:https://www.cnblogs.com/grooovvve/p/8745839.html

Python学习日记(十九) 模块导入

模块导入 当文件夹中有这样一个自定义的command模块 在它的内部写下下列代码: print('这个py文件被调用!') def fuc(): print('这个函数被调用!') 然后我们在command模块中执行下列代码: import command #这个py文件被调用! 我们如果在这段程序中反复执行多次这一段代码,这一个文件结果也只会被导入一次 import command #这个py文件被调用! import command import command import command

python全栈开发【第十一篇】Python常用模块三(hashlib,configparser,logging)

hashlib模块 hashlib提供了常见的摘要算法,如md5和sha1等等. 那么什么是摘要算法呢?摘要算法又称为哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示). 注意:摘要算法不是一个解密算法.(摘要算法,检测一个字符串是否发生了变化) 应涂:1.做文件校验 2.登录密码 密码不能解密,但可以撞库,用'加盐'的方法就可以解决撞库的问题.所有以后设置密码的时候要设置的复杂一点. #用户密码 import hashlib # md5

Python 学习笔记(6)--常用模块(2)

一.下载安装 下载安装有两种方式: yum\pip\apt-get 或者源码 下载源码 解压源码 进入目录 编译源码 python setup.py build 安装源码 python setup.py install 注:在使用源码安装时,需要使用到gcc编译和python开发环境,所以,需要先执行: yum install gcc python-devel 安装成功后,模块会自动安装到 sys.path 中的某个目录中,如: /usr/lib/python2.7/site-packages/

常用模块-----configparser &amp; subprocess

configparser 模块 功能:操作模块类的文件,configparser类型文件的操作类似于字典,大多数用法和字典相同. 新建文件: import configparser cfg=configparser.ConfigParser() cfg['DEFAULT']={'ServerAliveInterval': '45', 'Compression': 'yes', 'CompressionLevel': '9', 'ForwardX11':'yes' } cfg['bitbucket

ansible学习系列2-ansible常用模块使用

1. 查看支持的模块 [[email protected] ~]# ansible-doc -l 这里我们看下ansible的支持的模块个数 [[email protected] ~]# ansible-doc -l |wc -l #查看支持的模块个数 1039 [[email protected] ~]# ansible --version #查看我们的ansible版本号 ansible 2.3.1.0 config file = /etc/ansible/ansible.cfg confi