模块练习

1、random模块

# print(random.random())
# print(random.randint(1,3)) #模拟随机验证码
def make_code(n=5):
res=''
for i in range(n):
s1=str(random.randint(0,9))
s2=chr(random.randint(65,90))
res+=random.choice([s1,s2])
return res
print(make_code(10))

2、模拟打印进度条

 num=30
print('%s%%'%num) #打印进度条
width=50
print(('[%%-%ds]'%width)%'#')
print(('[%%-%ds]'%width)%'##')
print(('[%%-%ds]'%width)%'###')
print(('[%%-%ds]'%width)%'####') def progress(percent,width=50):
if percent > 1:
percent=1
show_str=(('[%%-%ds]'%width)%(int(width*percent)* '#'))
print('\r%s %d%%'%(show_str,int(100*percent)),end=' ') import time,random
recv_size=0
total_size=8097
while recv_size<total_size:
time.sleep(0.5)
recv_size+=1024
percent=recv_size / total_size
progress(percent)

3、shelve模块(序列化)

 import shelve

 #序列化
info1={'age':18,'herght':180,'weight':80}
info2={'age':88,'herght':150,'weight':80} d=shelve.open('db.shv')
d['egon']=info1
d['alex']=info2
d.close() #反序列化
d=shelve.open('db.shv')
print(d['alex'])
print(d['egon'])
d.close() #修改数据
d=shelve.open('db.shv',writeback=True)
# d['alex']['age']=10000
print(d['alex'])
d.close()

4、xml模块

 import xml.etree.ElementTree as ET
tree=ET.parse('a.xml')
root=tree.getroot() #========================================》》查
#三种方式查找节点
res=root.iter('rank')#会在整个树中进行查找,而且是查找所有
for item in res:
# print(item)
print('='*50)
print(item.tag)#标签名
print(item.attrib)#属性
print(item.text)#文本内容 res=root.find('country')#只能在当前元素的下一级进行查找,并且只找到一个就截止
# print(res.tag)
# print(res.attrib)
# print(res.text)
n=res.find('rank')
print(n.attrib) res=root.findall('country')#只能在当前元素的下一级进行查找,
print([item.tag for item in res]) #=====================================》》改
import xml.etree.ElementTree as ET
tree=ET.parse('a.xml')
root=tree.getroot() for year in root.iter('year'):
year.text=str(int(year.text)+10)
year.attrib={'updated':'yes'}
tree.write('a.xml') #===============================》增
import xml.etree.ElementTree as ET
tree=ET.parse('a.xml')
root=tree.getroot() for country in root.iter('country'):
# print('year')
year=country.find('year')
# print(year)
if int(year.text) > 2010:
# print(country.attrib)
# ele=ET.Element('egon')
# ele.attrib={'nb':'yes'}
# ele.text='好'
# country.append(ele)
country.remove(year) tree.write('b.xml')

                                   2018-08-15   22:54:40

python模块汇总练习的更多相关文章

  1. Python模块汇总

    正则模块:re 日期和时间模块:datetime 和time模块 加密模块:hashlib 远程连接模块:paramiko 日志模块:logging 高级函数工具包:functools 多线程: 队列 ...

  2. 2013流行Python项目汇总

    2013流行Python项目汇总 转自:http://www.kankanews.com/ICkengine/archives/102963.shtml Python作为程序员的宠儿,越来越得到人们的 ...

  3. Python资源汇总

    Python 目录: 管理面板 算法和设计模式 反垃圾邮件 资产管理 音频 验证 构建工具 缓存 ChatOps工具 CMS 代码分析和Linter 命令行工具 兼容性 计算机视觉 并发和并行性 组态 ...

  4. 大话python模块与包

    前言 眼看着老掌门年纪越来越大,掌门之位的传承也成了门派中的一件大事.这天,老掌门把小掌门叫到跟前,语重心长地说道:孩子啊,以后你就要继任掌门之位了,我就传授此生所学的绝世功法与你,以后可要悉心学习, ...

  5. Xilinx 常用模块汇总(verilog)【03】

    作者:桂. 时间:2018-05-10  2018-05-10  21:03:44 链接:http://www.cnblogs.com/xingshansi/p/9021919.html 前言 主要记 ...

  6. 老猿Python博文汇总目录--按标题排序

    ☞ ░ 前往老猿Python博文目录 ░ 本部分为老猿CSDN全部博文的汇总(含转载部分),所有文章在此未进行归类,仅按文章标题排序,方便关键字查找.本部分内容将至少以周为单位定期更新,可能不包含发布 ...

  7. Python模块Ⅰ

    Python模块Ⅰ part1 模块的定义/取别名 自定义模块 什么是模块:模块的本质就是.py文件,封装语句的最小单位 模块中出现的变量,for循环,if结构,函数定义...称为模块成员 模块的运行 ...

  8. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  9. Python模块之configpraser

    Python模块之configpraser   一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...

随机推荐

  1. Kettle-Data Integration 简介

    Pentaho系列产品介绍   Pentaho公司下面有一堆关于数据处理(数据整合.数据挖掘.报表等)的开源项目即社区版,入口网站: http://community.pentaho.com/ 数据整 ...

  2. 【踩坑】vue 无法让后台保存 session

    今天在调试 iblog 客户端时,发现登录后进行增加.删除.更新操作时都提示还没有登录. 此问题曾经在用 ajax 调试时出现过,解决办法是,在请求时带上 creditials: true ,即让发出 ...

  3. 二、React中的更新

    创建更新的方式:ReactDOM.render||hydrate 初次渲染,然后是setState.forceUpdate 一.React.render() 步骤:创建ReactRoot.创建Fibe ...

  4. display:table的几个用法(元素平分宽度,垂直居中)

    DIV+CSS的布局已经让表格布局几乎很少用到,除非表格语义性很强的情况. display:table解决了一部分需要使用表格特性但又不需要表格语义的情况, 尤其是DIV+CSS很不方便解决的问题,比 ...

  5. SqlServer图形数据库初体验

    SQL Server2017新增了一个新功能叫做图形数据库.图形指的拓扑图形,是一些Node表和Edge表的合集,Node对应关系数据库中的实体,比如一个人.一个岗位等,Edge表指示Node之前的关 ...

  6. cms-静态化组件

    1.要让我们的网站性能更好,那么有的东西是需要做静态化的.做静态化步骤: 1.1在web.xml中配置监听器 1.2.创建一个bean用来实现静态化 web.xml <?xml version= ...

  7. mongodb 入坑

    一.安装mongodb https://www.mongodb.com/ 官网下载合适的版本,安装在C或者D盘,我选择的是默认路径C:\Program Files\MongoDB\Server\3.4 ...

  8. IOS NSBundle使用(访问文件夹)

    NSBundle的相关信息 1.一个NSBundle代表一个文件夹,利用NSBundle能访问对应的文件夹 2.利用mainBundle就可以访问软件资源包中的任何资源 3.模拟器应用程序的安装路径: ...

  9. 深入理解计算机系统_3e 第二章家庭作业 CS:APP3e chapter 2 homework

    初始完成日期:2017.9.26 许可:除2.55对应代码外(如需使用请联系 randy.bryant@cs.cmu.edu),任何人可以自由的使用,修改,分发本文档的代码. 本机环境: (有一些需要 ...

  10. SSM框架之动态代理Mapper快速搭建

    1.   新建Maven项目 ssmnew 2.    pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" ...