'''小练习 计数器,产生了多少个对象''' # class Student: # school = 'luffycity' # count = 0 # def __init__(self, name, age, sex): # self.name = name # self.sex = sex # self.age = age # # self.count += 1 # Student.count += 1 # def learn(self): # print('%s is learing'…
class Box:#定义一个类名为Box,类名后不必有括号,类包含类属性和类方法,这个类没有定义类属性 '''这是一个计算体积的类'''#这是这个类的__doc__属性,执行类后就可以在交互界面输入Box.__doc__查看这行说明文字了 openstate=0 def __init__(self):#这是类的构造函数,当实例化Box后会自动调用这个__init__方法 self.length=0.0 #这是实例属性,在类内访问用self.length,在类外访问用 实例名.length se…
封装 一,引子 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,小老虎一起装进麻袋,然后把麻袋封上口子.照这种逻辑看,封装='隐藏',这种理解是相当片面的 二,先看如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) #其实这仅仅这是一种变形操作且仅仅只在类定义阶段发生变形 #类中所有双下划线开头的名称如__x都会在类定义时自动变形成:_类名__x的形式: class A: __N=0 #类的数据属性就应该是共享的,但是语法上是可以把类的数据属性设…
针对于上一篇分享python小练习---TCP客户端 http://www.cnblogs.com/zhaijiahui/p/6926197.html我继续按书中内容,向下进行这里需要强调一个事py3在使用 send() 和 recv() 的时候会出现TypeError: a bytes-like object is required, not 'str'解决方法:send() 里面的内容用 encode(‘utf-8’) 编码发送recv() 用 decode(‘utf-8’) 解码接收 好,…
今日内容一些小的干货 一. id is == 二. 代码块 三. 小数据池 四. 总结 python小数据池,代码块的最详细.深入剖析   一. id is == 二. 代码块 三. 小数据池 四. 总结 一,id,is,== 在Python中,id是什么?id是内存地址,比如你利用id()内置函数去查询一个数据的内存地址: name = '太白' print(id(name)) # 1585831283968 那么 is 是什么? == 又是什么? == 是比较的两边的数值是否相等,而 is…
一.什么是代码块? 根据官网提示我们可以获知: A Python program is constructed from code blocks. A block is a piece of Python program text that is executed as a unit. The following are blocks: a module, a function body, and a class definition. Each command typed interactiv…
小整数对象池 (在python内置了) 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁内存空间. Python对小整数的定义是[-5,257]这些整数对象是提前建立好的,不会被垃圾回收.在一个Python的程序中,所有位于这个范围内的整数使用的都是同一个对象. 同理,单个字母也是这样的. 但是当定义2个相同的字符串时,引用计数为0,触发垃圾回收 intern机制 a1="helloworld" a2="helloworld&…
Python自动化之django orm之Q对象 什么是Q对象? Encapsulates filters as objects that can then be combined logically (using& and |) 关联查询 Poll.objects.get( Q(pub_date=date(2005, 5, 2)) | Q(pub_date=date(2005, 5, 6)), question__startswith='Who') AND AND def ceshi(requ…
python中的引用传递 首先必须理解的是,python中一切的传递都是引用(地址),无论是赋值还是函数调用,不存在值传递. 可变对象和不可变对象 python变量保存的是对象的引用,这个引用指向堆内存里的对象,在堆中分配的对象分为两类,一类是可变对象,一类是不可变对象.不可变对象的内容不可改变,保证了数据的不可修改(安全,防止出错),同时可以使得在多线程读取的时候不需要加锁. 不可变对象(变量指向的内存的中的值不能够被改变) 当更改该对象时,由于所指向的内存中的值不可改变,所以会把原来的值复制…
小学生都能学会的python(小数据池) 1. 小数据池. 目的:缓存我们字符串,整数,布尔值.在使用的时候不需要创建过多的对象 缓存:int, str, bool. int: 缓存范围 -5~256 str: 1. 长度小于等于1,直接缓存 2. 长度大于1. 字符串中如果只有数字, 字母, 下划线. 就会缓存 3. 乘以1. 同上, 乘以大于1的数.仅包含数字,字母下划线.最终长度小于20会缓存 4. 使用sys模块中的intern()缓存字符串 代码块的关系:如果在同一个代码块中.默认的整…