import struct
import base64import itertoolsimport chardet
from collections import namedtuple,defaultdict,OrderedDict,Counter
# namedtuple 新建1个元组,并设置元素的属性和个数# namedtuple('名称','列表')# 例如 namedtuple('Circle', ['x', 'y', 'r'])

# dqueue 高效插入和删除操作的双向列表,适合于队列和栈

# defaultdict 用于键不存在时,返回一个默认值,用于字典中# 创建默认值的字典# defaultdict(lambda :'n/a')

# ChainMap

# OrderedDict 使字典有序,用 OrderedDict 按照插入的顺序排列# 为FIFO(先进先出)的dict,当字典满时,需要再插入数据,会删除最早插入的数据

# Counter 统计字符中各字符的个数c=Counter()for i in 'this is a stirng':    c[i]=c[i]+1

print(c)
#base64 用64个字符,表示二进制数据的一种方式,用于处理二进制数据与字符串之间进行转换,可被认为是进行简单加密和解密
# 每3个字节一组 共3*8=24bit 每组6bit# 二进制数据不足3的倍数,则在\x00后加上不定数的=,加几个=,则表示补了几个字节# 适用于不重要的信息进行加密,一般用户证书 cookie 网页 及在url传输少量二进制数据

# struct 用于处理bytes与其他二进制数据之间的转换

# 任意类型->bytest# > 网络序 I 无符号整数result=struct.pack(">I",24)print(result)

# bytes->任意类型# 后面的bytes依次变为I H 4字节无符号整数 I 2字节无符号整数result=struct.unpack(">IH",b'\xf0\xf0\xf0\xf0\x80\x80')print(result)

# itertools 用于操作迭代对象

#把一个序列无线重复下去# itertools.cycle()

#把一个元素无线重复下去,除非指定次数# itertools.repeat()

# 可通过条件判断取出一个有限序列c=itertools.count(1,5)r=itertools.takewhile(lambda x:x<=10,c)print(list(r))

# 可以把一组迭代对象串联起来,形成一个更大的迭代器itertools.chain()

# 把迭代器中相邻的重复元素挑出来放在一起,返回值做为组的keyfor key,group in itertools.groupby("testing",lambda t:t.upper()):    print(key,list(group))

# xml 用于处理xml格式文件及格式数据# sax:流模式 边解析边读,占用内存小,解析快,需要自定义处理事件# dom:树模式 解析慢 占用内存大,但可以遍历任意节点

# chardet 用于检测对象使用了哪类编码# result=chardet.detect(b"test")data="test".encode('utf-8')result=chardet.detect(data)print(result)

转载于:https://www.cnblogs.com/NiceTime/p/10089510.html

Python3基础12(collections、struct、itertools、chardet等的使用)相关推荐

  1. Python3 基础

    Python3 基础知识笔记 ##################################################################################### ...

  2. 整理了100道关于Python3基础知识的练习题,记得收藏

    100道关于Python3基础知识的练习题 实例1.数字组合 实例2.个税计算 实例3.完全平方数 实例4.这天第几天 实例5.三数排序 实例6.斐波那契数列 实例7.copy 实例8.九九乘法表 实 ...

  3. Python3 基础语法

    Python3 基础语法 编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -*- coding: ...

  4. python3 基础题目练习

    python3 基础题目练习 零 前言 一 python3 基础题目 1 题目:斐波那契数列 1.2 题目:(斐波那契数列) 兔生兔 2 题目:输出 9*9 乘法口诀表 3 题目:格式化当前时间 4 ...

  5. 01月26日【Python3 基础知识】

    01月26日[Python3 基础知识] 5.1 九宫格 5.2 函数入门 5.3 判断某天为某年的第几天 5.1 九宫格 import random x = 0 l = [1,2,3,4,5,6,7 ...

  6. python计算1到100的和-Python3基础 sum,range 计算1到100的和

    镇场诗: ---大梦谁觉,水月中建博客.百千磨难,才知世事无常. ---今持佛语,技术无量愿学.愿尽所学,铸一良心博客. --------------------------------------- ...

  7. Python3 基础学习笔记 C08 【类】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

  8. Python拾遗1:collections、itertools和内存io

    Python拾遗1:collections.itertools和内存io 转自:https://www.liaoxuefeng.com/wiki/1016959663602400 本系列旨在补充pyt ...

  9. Python3基础知识

    Python3基础知识 学习路线主要参照:菜鸟教程 和 Python教程2020版 一.Python简介 1. What is Python? Python 是一个高层次的结合了解释性.编译性.互动性 ...

最新文章

  1. 使用关键点进行小目标检测
  2. 2017-06-08 前端日报
  3. PAT甲级1102 Invert a Binary Tree:[C++题解]反转二叉树、递归
  4. Ubuntu13.10下编译安装opencv2.4.9
  5. go语言中的闭包结构
  6. 给一个不多于5位的正整数,求出它是几位数?
  7. “换标”Intel的穷则思变
  8. 零的突破!炸出圈的“女娲补天”教授获国家杰青!
  9. Cisco 利用 802.1X、动态VLAN和DHCP技术实现方案
  10. Ffmpeg快速应用开发
  11. SpringMVC框架第三天
  12. ack过来服务器未响应,DHCP服务器问题:抓不到ACK包
  13. 简单测试std::move
  14. Silverlight 5 RC新特性探索系列:15.Silverlight 5 RC 对OpenType字体属性的支持
  15. Java 总结4 数据流 文件处理
  16. C51单片机数码管静态显示(附源码及工程)
  17. java商城有怎么样的优势,关于java商城系统的优势介绍
  18. 2020 CCPC - 网络选拔赛 签到计划
  19. 大败局:知名企业的失败教训
  20. iot-Scada免费Scada组态软件系列教程4-二次开发与版本部署

热门文章

  1. java ArrayList源码分析(转载)
  2. 下载--保存(下载)文件到本地(.doc .jpg)
  3. Ant 构建文件的一种写法
  4. windows server2003 xp化
  5. 【转贴】CSS Sticky Footer: 完美的CSS绝对底部
  6. Dxperience 7.3.3 繁体中文本地化
  7. DOM节点的获取及创建
  8. Python---字符串与列表
  9. 【电商系统】—项目梳理(一)
  10. 报错:mysqldump‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。