news 2026/6/4 17:08:58

python学习第七周

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python学习第七周

argparse

更方便的获取命令行参数,,是sys.args的封装:

importargparsedefmain():parser=argparse.ArgumentParser(prog="程序名字",description="mysql database描述",epilog="说明信息copyright 2026")parser.add_argument("--host",default="localhost")parser.add_argument("--port",default=3306,type=int)parser.add_argument("-u","--user",required=True)parser.add_argument("-p","--password",required=True)args=parser.parse_args()print("parse args")print(f"host:{args.host}")print(f"port:{args.port}")print(f"user:{args.user}")if__name__=='__main__':main()

测试:
python 2.py --user waterkid --password 123
python .\2.py -h: -h查看帮助

Base64

Base64: 将二进制数据转换成文本格式,,将这些二进制数据映射为A-Z,a-z,0-9,+,/这64个可打印字符,,

3个字节3*8 = 24bit, 划分成4组,,每一组6bit,然后得到这4个数字作为索引,然后查表(2的6次方=64,也就是对应的64个字符),获得相应的4个字符,,就是编码后的字符串

  • 如果二进制数据不是3的倍数,,最后会剩下一两个字节,,,Base64用\x00字节在末尾补足后,,再在编码的末尾加上1个或者2个=号,表示补了多少个字节,,解码的时候,会自动去掉
  • 标准的Base64编码后可能会出现+或者/,在url中不能直接作为参数,,所以又有一种url safe的base64编码,其实就是把+/分别变成-_
  • 编码后数据体积会比原始数据大1/3 ,,因为3个字节的二进制数据,会被编码成4个字符,,
a=base64.b64encode(b"hello")print(a)b=base64.b64decode("aGVsbG8=")print(b)# 将二进制变成字符串print(b.decode(encoding="utf-8"))

struct

struct: 精准控制二进制的格式,字节序,字节长度,,适配C/硬件/网络协议的二进制规则
b"hello" : 字符类二进制,,但如果传输的不是字符串,,比如数字,浮点数,,直接转bytes就会出现问题,,因为数字不能当成字符来序列化,

importstruct a=str(12345).encode("utf-8")print(a)right_bytes=struct.pack("i",12345)print(right_bytes)num=struct.unpack("i",right_bytes)print(num)# ?q是格式符 :?表示占用1字节是bool类型,, q表示是长int类型,占用8字节packed=struct.pack("?q",True,1234567890123)print(packed)s=struct.unpack("?q",packed)print(s)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/31 2:45:33

折线图的奇妙变奏:四种创意可视化方法

想象一下折线图就像一条普通的公路,它能带我们从A点到达B点。 但有时我们需要更特别的路线:环岛、盘山公路、波浪形赛道或螺旋上升的通道。 在数据可视化中,标准的折线图有时无法充分展示数据的特性,这时我们就需要一些创意变种。…

作者头像 李华
网站建设 2026/5/27 23:45:38

Kotlin协程进阶王炸之作-Kotlin的协程到底是什么

Kotlin协程进阶之不得不看 kotlin协程推出至今已成为 Android 开发人员的必备技能,但直到今天仍然有很多关于kotlin协程底层的争议。本篇文章围绕kotlin协程底层结合着一些基础讲解,希望可以探究明白kotlin到底是什么,当然,笔者知…

作者头像 李华
网站建设 2026/5/28 14:52:43

学霸同款10个一键生成论文工具,研究生高效写作必备!

学霸同款10个一键生成论文工具,研究生高效写作必备! AI 工具如何助力论文写作,提升效率与质量 在研究生阶段,论文写作是一项不可避免的任务,而随着人工智能技术的不断进步,AI 工具已经成为许多学生的得力…

作者头像 李华
网站建设 2026/5/31 22:33:57

一个月内面了30家公司,薪资从18K变成28K,真行啊····

工作3年,换了好几份工作(行业流行性大),每次工作都是裸辞。朋友都觉得不可思议。因为我一直对自己很有信心,而且特别不喜欢请假面试,对自己负责也对公司负责。 但是这次没想到市场环境非常不好,…

作者头像 李华