感觉这种理解有问题,举个例子来说。classDog(object):name='dog'definit(self):self.age=18d1=Dog()d2=Dog()这里有两个实例d1,d2吧。d1.name#输出dogd2.name#输出dogd1.name='abc'd1.name#输出abcd2.name#输出dogDog.name#输出dog原因是d1.name输出dog不是因为这个实例共享了类属性,而是因为这个实例没有dog属性,所以pyth
系统 2019-09-27 17:51:12 1868
使用threading.Event可以实现线程间相互通信,之前的Python:使用threading模块实现多线程编程七[使用Condition实现复杂同步]我们已经初步实现了线程间通信的基本功能,但是更为通用的一种做法是使用threading.Event对象。使用threading.Event可以使一个线程等待其他线程的通知,我们把这个Event传递到线程对象中,Event默认内置了一个标志,初始值为False。一旦该线程通过wait()方法进入等待状态
系统 2019-09-27 17:50:54 1868
创建时间序列函数pd.date_range()根据指定的范围,生成时间序列DatetimeIndex,每隔元素的类型为Timestamp。该函数应用较多。ts=pd.date_range('2017-09-01',periods=10,freq='d',normalize=False)ts输出为:DatetimeIndex(['2017-09-01','2017-09-02','2017-09-03','2017-09-04','2017-09-05','
系统 2019-09-27 17:50:15 1868
一、运算符1、算术运算符:+-*///**%+加两个数相加1+2=3-减两个数相减3-1=2*乘两个数相乘1*2=2/除两个数相除5/2=2.5//整除两个数相除得到整数5//2=2**幂幂次方2**3=8%取余两个数的余数5%2=1(可以用来判断奇偶数取余为0的时候为偶数取余为1的时候为奇数)2、比较运算符:>、<、>=、<=、==、!=结果只有真假truefalse为bool类型3、赋值运算符:+=-=*=/=//=%=**=num+=1等价于num=
系统 2019-09-27 17:49:47 1868
2.快速排序2.1算法思想快速排序是对冒泡排序的一种改进。通过一次排序(设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它左边,所有比它大的数都放到它右边,这个过程称为一次快速排序)将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序的
系统 2019-09-27 17:49:43 1868
一Python模块简介1模块化一般来说,编程语言中,库,包,模块是同一种概念,是代码组织方式python中只有一种模块对象类型,但是为了模块化组织的便利,提供了一个概念:包模块(module):指的是python的源代码文件包(package):指的是模块组织在一起放入和包名同名的目录及相关文件可以将代码量较大的程序分割成多个有组织,彼此间独立但又能互相交互的代码片段,这些自我包含的有组织的代码段就是模块模块在物理形式上表现为以.py结尾的代码文件一个文件
系统 2019-09-27 17:49:43 1868
一般来说,用pandas处理小于100兆的数据,性能不是问题。当用pandas来处理100兆至几个G的数据时,将会比较耗时,同时会导致程序因内存不足而运行失败。当然,像Spark这类的工具能够胜任处理100G至几个T的大数据集,但要想充分发挥这些工具的优势,通常需要比较贵的硬件设备。而且,这些工具不像pandas那样具有丰富的进行高质量数据清洗、探索和分析的特性。对于中等规模的数据,我们的愿望是尽量让pandas继续发挥其优势,而不是换用其他工具。本文我们
系统 2019-09-27 17:49:29 1868
问题背景:源于公司的原来的代码是python2开发的,后来改为python3开发,设计到的property的用法有点不一样直接上代码公司原来的python2的代码classLineItem:def__init__(self,description,weight,price):self.description=descriptionself.__weight=weightself.price=price@propertydefweight(self):ret
系统 2019-09-27 17:49:16 1868
文章目录160.相交链表(链表)232.用栈实现队列69.x的平方根(二分法)215.数组中的第K个最大元素(快排)347.前K个高频元素(桶排序)378.有序矩阵中第K小的元素(排序)1051.高度检查器(排序)17.电话号码的字母组合(递归)241.为运算表达式设计优先级(分治)455.分发饼干(贪心)160.相交链表(链表)把两个链表连起来,不断遍历,相等停下!classSolution(object):defgetIntersectionNode(
系统 2019-09-27 17:49:15 1868
在过去的一年里,美国人用金枪鱼搜索python而不是Kimkardashian,其背后的主要原因是python的简单性和灵活性。它已经为那些难以编程的人提供了编码指尖。它是开源的。我们可以免费下载。这里出现了一些问题:是什么让python简单易学?是什么让它与其他编程语言不同?它受欢迎的原因是什么?它的语法简单明了,易于阅读。它使用缩进空格,使代码易于理解。它有145,000个自定义构建的软件包,从开发应用程序,游戏开发到天文学,上传到在线存储库。它还可以
系统 2019-09-27 17:48:45 1868
self代表类的实例,而非类类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,按照惯例它的名称是self。从执行结果可以很明显的看出,self代表的是类的实例,代表当前对象的地址,而self.class则指向类。self不是python关键字,我们把他换成其他也是可以正常执行的:classTest:def__init__(runoob):runoob.a='a'defprt(runoob):print(runoob.a)t=Te
系统 2019-09-27 17:48:04 1868
经常有同学问我Python入门及进阶的学习书籍,所以今天给大家分享两本书。Python编程:从入门到实践Python从入门到实践,豆瓣评分9.1分,基于Python3.5也兼顾了2.7。书前半部分(11章)是对Python基础知识的讲解,而后半部分(9章)分别讲述了三个项目实践,从「外星人入侵」游戏,数据可视化,DjangoWEB开发进行实践。可以说是真的兼顾了「入门」和「实践」。难能可贵的是作者专门拿出一章来讲如何进行单元测试,单元测试我觉得是一个程序员
系统 2019-09-27 17:47:47 1868
1.手动制作python的exe可执行程序Python没有内建一个编译为exe的功能。给python程序的部署带来不少的麻烦。所以就会出现一些py2exe之类的很不错的工具,用于自动把.py文件编译为.exe文件。最近抽空研究了一下手动实现类似py2exe的功能,希望加强对python的了解。结果还相当不错。把结果记录下来,与大家共享。1.1.原理文中所描述的方法,基于python的以下几个功能1)python程序运行时,会在sys.path指定的路径中查
系统 2019-09-27 17:47:34 1868
decode()方法使用注册编码的编解码器的字符串进行解码。它默认为默认的字符串编码。语法以下是decode()方法的语法:str.decode(encoding='UTF-8',errors='strict')参数encoding--这是所使用的编码。对于所有的编码方案的列表,请访问:标准编码库errors--这可能是给定一个不同的错误处理机制。默认的错误是“严格”,即编码错误提出UnicodeError。其他可能的值是ignore','replace'
系统 2019-09-27 17:47:20 1868
FromPython正则表达式re.match(pattern,string,flags=0)尝试从字符串起始位置匹配一个模式;如果不是起始位置匹配成功,则re.match()返回none.匹配成功,re.match()返回一个匹配的对象,否则返回None.pattern-匹配的正则表达式string-要匹配的字符串flags-标志位,控制正则表达式的匹配方式,如,是否区分大小写,多行匹配等.e.g.#!/usr/bin/python#-*-coding:
系统 2019-09-27 17:46:48 1868