搜索到与相关的文章
Python

基于Python对象引用、可变性和垃圾回收详解

变量不是盒子在示例所示的交互式控制台中,无法使用“变量是盒子”做解释。图说明了在Python中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式。变量a和b引用同一个列表,而不是那个列表的副本>>>a=[1,2,3]>>>b=a>>>a.append(4)>>>b[1,2,3,4]如果把变量想象为盒子,那么无法解释Python中的赋值;应该把变量视作便利贴,这样示例中的行为就好解释了注意:对引用式变量来说,说把变量分配给对象更合理,反过来说就有问题

系统 2019-09-27 17:53:57 2071

Python

Python面向对象编程——绑定方法与非绑定方法

Python面向对象编程——绑定方法与非绑定方法一、类中定义的函数分成两大类1、绑定方法(绑定给谁,谁来调用就自动将它本身当作第一个参数传入1)绑定到类的方法:用classmethod装饰器装饰的方法。为类量身定制类.boud_method(),自动将类当作第一个参数传入(其实对象也可调用,但仍将类当作第一个参数传入)2)绑定到对象的方法:没有被任何装饰器装饰的方法。为对象量身定制对象.boud_method(),自动将对象当作第一个参数传入(属于类的函数

系统 2019-09-27 17:53:30 2071

Python

python的多线程的一个类,直接可以使用

importthreadingimportqueueimporttime'''queue.qsize()返回队列的大小queue.empty()如果队列为空,返回True,反之Falsequeue.full()如果队列满了,返回True,反之Falsequeue.full与maxsize大小对应queue.get([block[,timeout]])获取队列,timeout等待时间queue.get_nowait()相当queue.get(False)qu

系统 2019-09-27 17:53:25 2071

Python

python基础之面向对象的三大特征(15)

self:1.只是一个参数。2.在对象使用方法的时候,当前对象会作为第一个参数的实参传入3.self相当于语言中的代词,表示当前对象本身(其他语言中也有使用this)4.self的作用连接整个对象的所有信息。桥梁的作用!5.self不是关键字,只是一个参数变量名而已,可以使用其他单词代替(禁止代替)6.方法的初步分类:方法中具有接受对象的参数这个方法,叫做非绑定类的方法方法中没有接受对象的参数这个方法,叫做绑定类的方法:即将deffunc(self)中的s

系统 2019-09-27 17:53:21 2071

Python

简单了解python的一些位运算技巧

前言位运算的性能大家想必是清楚的,效率绝对高。相信爱好源码的同学,在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢?想必最大的原因,是较为难懂。不过,在面试的过程中,在手写代码过程中,写出一两个位运算的代码,还会让面试官眼前一亮的。位运算常用的运算符包括&(按位与),|(按位或),~(按位非),^(按位异或),<<(有符号左移位),>>(有符号右移位)。下面用几个例子说明其应用,希望对你有所启发。1、判断奇数还是偶数通常判

系统 2019-09-27 17:53:07 2071

Python

Python字典遍历的几种方法

转https://www.cnblogs.com/ducklu/p/8943903.html1.遍历key值1>>>d={'Python':'astonishing','C++':'complicated','Java':'versatile'}2>>>forkeyind:3...print(key+':'+d[key])4...5Python:astonishing6C++:complicated7Java:versatile同理,可把下列代码的d改为d

系统 2019-09-27 17:52:37 2071

Python

Django或者Flask创建Python虚拟环境启动第一个Hello

前言刚开始开发Web的时候,没太在意隔离虚拟环境,用了系统的那一套,Python2.7版本是系统自带的,虽说明年就结束了,但是现在开发都会有一套3.x以上的环境,即使你开发不注意,你部署的时候总归是要隔离出来的。1.方便隔离,不同环境编写测试2.方便迁移,pipfreeze到出包文件依赖,随后提交管理和迁移都很方便virtualenv前提是你有两套PythonmikejingdeMacBook-Pro:~MKJ$whichpython/usr/bin/py

系统 2019-09-27 17:52:34 2071

Python

Python练习题汇总【持续更新】

练习题汇总设计一个函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5,若是返回True,否则返回Falsedefislength(obj):#判断对象的类型iftype(obj)in[str,list,tuple]:iflen(obj)>5:returnTrueelse:returnFalse设计一个函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容【字符串中含有空格,列表与元组中函数有空串】。若含有则返回True,否则返回

系统 2019-09-27 17:52:06 2071

Python

Python中运行并行任务技巧

示例标准线程多进程,生产者/消费者示例:Worker越多,问题越大复制代码代码如下:#-*-coding:utf8-*-importosimporttimeimportQueueimportthreadingfromPILimportImagedefcreate_thumbnail(filename,size=(128,128)):try:fp,fmt=filename.rsplit('.',1)im=Image.open(filename)im.thum

系统 2019-09-27 17:52:06 2071

Python

python学习笔记——循环

for我们先来看一下for语句的格式:foriinrange(0,5):print(i)其中range相当于一个迭代器。我们可以这么尝试:print(list(range(0,5)))输出很简单了,就是01234当然了这里的迭代器可以用自己的list比如:cgg=["cgg","cgg1","cgg2"]foriincgg:print(i)输出结果就是三个字符串以此输出。while循环语句当然少不了while了先来看看while的格式:whilecgg<1

系统 2019-09-27 17:51:52 2071