模块练习

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. SpringBoot | 第十七章:web应用开发之文件上传

    前言 上一章节,我们讲解了利用模版引擎实现前端页面渲染,从而实现动态网页的功能,同时也提出了兼容jsp项目的解决方案.既然开始讲解web开发了,我们就接着继续往web这个方向继续吧.通常,我们在做we ...

  2. CSS中的IFC和BFC入门

    CSS中的IFC和BFC入门   提到CSS,首先会想到的就是盒模型,如果对于盒模型不是很理解的,看这里.这是一个基础的系列,看了盒模型还可以看看box-sizing,好了不多说了,下面介绍今天的重点 ...

  3. JAVA基础系列(一) 概述与相关概念

    万事开头难,来这个平台上已经有一段时间了,看到了很多高质量的文章,也很喜欢这种简约的风格.一直也想把自己的零散的知识体系组织起来,但苦于自己拙劣的文笔和不成流派的风格让大家笑话,直到现在才开始.可是从 ...

  4. 全栈工程师,也叫全端工程师,英文FullStackdevelopver。是指掌握多种技能,并能利用多种技能独立完成产品的人。

    全栈工程师的发展 在系统全面的大公司,全栈工程师并没有一个稳定的发展职位.我无比赞同知乎那个帖子里面这样的一句话: 一个真正的全栈工程师,目标只有一个:创业. 听起来有些悲凉,但事实就是如此.任何一个 ...

  5. asp.net 在IIS上配置出现的一些问题

    1.可能会遇到一下图的错无.请求的内容似乎是脚本.因而将无法由静态文件处理程序来处理---大概的原因是应用程序池选择错误了.如第二幅图如此解决即可 解决方案如下两个图所示. 我遇到了以上的问题之后能也 ...

  6. jar 压缩 解压 war包

    Win+R 输入cmd进入命令行,进入到源码所在目录.所用工具,jdk自带的jar.exe 打包命令:jar -cvf xxx.war * 解包命令: jar -xvf xxx.war * 参数 说明 ...

  7. mysql登陆远程数据库

    1.登陆mysql 2.e mysql; 3.比如用户名密码为root/root. 你想root使用root从任何主机连接到mysql服务器的话. @’ ’后面加ip地址一般般为localhost或者 ...

  8. https 双向验证

    服务器配置 服务器秘钥   服务器公钥证书  ,客户端公钥证书 客户端配置  客户端秘钥+密码 服务器公钥证书 目前android验证ok,pc浏览器添加客户端秘钥证书  ,访问还是失败,待继续查找资 ...

  9. Hyper-V 2016 配置管理系列(应用篇)

    远程连接到Hyper-V HOST 为了日常运维管理操作,使用远程PowerShell工作.Windows 10上安装了RSAT(远程管理工具 ).然后安装了Hyper-V控制台: 在能够远程连接到H ...

  10. String和string

    String和string的区别 从位置讲:         1.String是.NET   Framework里面的String,小写的string是C#语言中的string 2.如果把using ...