Python基础(梳理自己的框架)
吉吉有梦想
这个作者很懒,什么都没留下…
展开
-
Python逻辑右移与大数相乘问题
文章目录1. Python大数相乘2. Python实现逻辑右移(无符号右移)1. Python大数相乘最近在murmurhash2从Java转Python时候遇到一个问题,int无限宽度,不会溢出。算法中需要用到了32位int的溢出来参与运算,但是python的int是不会溢出的,达到界限后会自己转为long。解决方案#这个函数可以得到32位int溢出结果,因为python的int一旦超过宽度就会自动转为long,永远不会溢出,有的结果却需要溢出的int作为参数继续参与运算def int_ove原创 2020-08-20 10:52:19 · 1213 阅读 · 0 评论 -
Base64编码与解码 ——Python实现
文章目录1. 引言2. Base64简介3. 预习知识3.1 字节3.2 二进制 与字节3.3 ASCII码3. Base64编码3.1 个人理解3.2 代码实现4. Base64解码4.1 个人理解4.2 代码实现1. 引言记录学习base64编码与解码的思考以及通过Python实现。2. Base64简介这里请参考文章:一文彻底看懂Base64原理声明: 本文的图片均来自上述文章。我的理解就是,将待编码字符集合与二进制{0, 1}之间相互的等价转换情况。注意:base64是一种可以算是公开原创 2020-08-02 21:12:02 · 2452 阅读 · 0 评论 -
Python—记录好用的一些问题
文章目录前言1. format()的用法1.1 作为拼接字符串进行使用1.2 对齐方式前言记录常用到的一些方法,持续更新。2020年8月2日创建1. format()的用法1.1 作为拼接字符串进行使用'{}'.format(变量)1.2 对齐方式'{a:<10}'.format(a=12.3,b=13.44) 左对齐,长度为10'{a:0>10}'.format(a=12.3,b=13.44) 右对齐...'{a:0^10}'.format(a=1原创 2020-08-02 00:37:28 · 193 阅读 · 0 评论 -
Python基础——网络编程(TCP/IP简介、TCP编程、UDP编程)
网络编程TCP/IP简介互联网的协议简称TCP/IP协议。互联网上每个计算机的唯一标识就是IP地址。TCP协议则是建立在IP协议之上的。TCP协议负责在两台计算机之间建立可靠连接,保证数据包按顺序到达。一个TCP报文除了包含要传输的数据外,还包含源IP地址和目标IP地址,源端口和目标端口。TCP编程Socket是网络编程的一个抽象概念。通常我们用一个Socket表示“打开了一个网络链接...原创 2019-10-11 22:07:22 · 201 阅读 · 0 评论 -
Python基础——错误、调试和测试
错误、调试和测试Python内置了一套异常处理机制,来帮助我们进行错误处理。此外,我们也需要跟踪程序的执行,查看变量的值是否正确,这个过程称为调试。Python的pdb可以让我们以单步方式执行代码。最后,编写测试也很重要。有了良好的测试,就可以在程序修改后反复运行,确保程序输出符合我们编写的测试。错误处理高级语言通常都内置了一套 try…except…finally… 的错误处理机制当我...原创 2019-10-11 21:56:36 · 242 阅读 · 0 评论 -
Python基础——面向对象(@property、定制类)
添加属性和方法正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。还可以尝试给实例绑定一个方法:但是,给一个实例绑定的方法,对另一个实例是不起作用的,会报错:通常情况下,上面的setAge方法可以直接定义在class中,但动态绑定允许我们在程序运行的过程中动态给class加上功能,这在静态语言中很难实现。...原创 2019-10-11 21:12:56 · 299 阅读 · 1 评论 -
Python基础——列表、元组、字典、集合
概念:有序的可变的元素集合定义方式1:[元素1,元素2……]例如:nums = [1,2,3,4,5]定义方式2:列表生成式:nums = range(1,100,2)第三个参数是步长,可省略列表推导式【表达式 for 变量 in 列表】、【表达式 for 变量 in 列表 if 条件】例如:resultList = [num ** 2 for num in nums]列表的嵌套...原创 2019-10-10 20:37:50 · 558 阅读 · 0 评论 -
Python基础——迭代器、装饰器、生成器
一、迭代器迭代概念:是访问集合元素的一种方式,按照某种顺序逐个访问集合中的每一项。可迭代对象: 能够被迭代的对象,称为可迭代对象。判定依据: 能作用于for in。判定方法: import collectionsIsinstance(obj, collections.Iterable)迭代器: 是可以记录遍历位置的对象,从第一个元素开始,往后通过next()函数进行遍历,只能...原创 2019-10-11 18:30:21 · 288 阅读 · 0 评论