最近学习《Python参考手册》学到Class部分,遇到了类的构造析构部分的问题:1、什么时候构造?2、什么时候析构?3、成员变量如何处理?4、Python中的共享成员函数如何访问?------------------------探索过程:1、经过查找,Python中没有专用的构造和析构函数,但是一般可以在__init__和__del__分别完成初始化和删除操作,可用这个替代构造和析构。还有一个__new__用来定制类的创建过程,不过需要一定的配置,此处不
系统 2019-09-27 17:51:55 2156
set集合无序可变由不同元素组成其元素必须为可哈希的类型(通俗来说不可变类型)集合的两种定义方式使用{}Eg:{1,2,3,4,5}使用set(可迭代类型)函数Eg:set("hello")*使用frozenset()函数创建不可变集合基本函数s=set("hello")"""添加一个元素到集合中"""s.add('b')"""使用可迭代对象更新集合"""s.update([1,2,3,4])"""清空集合"""s.clear()"""拷贝集合(浅拷贝)返
系统 2019-09-27 17:51:08 2156
1.原地交换两个数字Python提供了一个直观的在一行代码中赋值与交换(变量值)的方法,请参见下面的示例:x,y=10,20print(x,y)x,y=y,xprint(x,y)#1(10,20)#2(20,10)赋值的右侧形成了一个新的元组,左侧立即解析(unpack)那个(未被引用的)元组到变量和。一旦赋值完成,新的元组变成了未被引用状态并且被标记为可被垃圾回收,最终也完成了变量的交换。2.链状比较操作符比较操作符的聚合是另一个有时很方便的技巧:n=1
系统 2019-09-27 17:50:49 2156
Mock是什么Mock这个词在英语中有模拟的这个意思,因此我们可以猜测出这个库的主要功能是模拟一些东西。准确的说,Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为。简单的说,mock库用于如下的场景:假设你开发的项目叫a,里面包含了一个模块b,模块b中的一个函数c(也就是a.b.c)在工作的时候需要调用发送请求给特定的服务器来得到一个JSON返回值,然后根据这个返回值来做处理
系统 2019-09-27 17:50:41 2156
python读写Excel最近小编在处理各种.xlsx表格的数据处理和计算的工作,目前python用于操作表格的模块有很多,功能各有千秋。本文主要讲的是xlwt用于写,xlrt用于读。表格写入简单的写入功能可用xlwt模块,写入功能的难点在于写入合并的单元格。单元格的下标都是从0开始。xlwt官方API:https://xlwt.readthedocs.io/e...安装:pipinstallxlwt新建workbook:wk=xlwt.Workbook(
系统 2019-09-27 17:50:14 2156
蒙特卡罗方法是一种统计模拟方法,由冯・诺依曼和乌拉姆提出,在大量的随机数下,根据概率估计结果,随机数据越多,获得的结果越精确。下面我们将用python实现蒙特卡罗方法。1.首先我们做一个简单的圆周率的近似计算,在这个过程中我们要用到随机数,因此需要先使用importnumpyasnp导入numpy库。2.代码实现:importnumpyasnptotal=8000000count=0foriinrange(total):x=np.random.rand()
系统 2019-09-27 17:50:01 2156
实现一个函数,将一个字符串中的空格替换成“%20”#!/usr/bin/envpython#-*-coding:utf-8-*-test=raw_input()#从键盘输入inital_length=len(test)kong=0#kong用来统计输入的一行数据中总共有多少个空格foriintest:ifi=="":kong+=1final_length=inital_length+2*kong#计算转换后的数组的长度p1=inital_length-1p
系统 2019-09-27 17:49:13 2156
我觉得,开始学习一门编程时候,不仅仅是要去学习它的语法,而是在给你一段代码的时候,你能够对这段代码的主要结构在心里面有一个大致的框架,也就是你要知道这一块是干什么的,那一块又是干什么的,然后再一块一块的详细去看代码的具体语句。一、从对象到类1.对象是在应用程序中使用的、组合成一个单一的实体的数据。例如,如果编写一个程序使用汽车,那么将会创建一个Car对象,其中包含了一些汽车的信息,如车的重量、大小、引擎以及门的数量。如果你正在编写一个程序来记录人,那么你可
系统 2019-09-27 17:48:44 2156
defadd(x,y):returnx+yadd=lambdax,y:x+yprint(add(1,2))dic={'k1':10,'k2':100,'k3':30}deffunc(key):returndic[key]print(max(dic,key=func))#根据返回值判断最大值,返回值最大的那个参数是结果print(max(dic,key=lambdakey:dic[key]))max([1,2,3,4,5,-6,-7],key=abs)ret
系统 2019-09-27 17:48:36 2156
Shellshell获取文件最后修改时间的秒时间戳:stat-c%Y$path/$newest_logshell获取当前时间的秒时间戳:date+%s两个时间戳相减:timegap=$[$timestamp-$filetimestamp]将日期时间字符串转化为时间戳:date-d"2019-08-26"+%s将时间戳转化为日期时间字符串:date-d@1566748800获取n天前的日期时间:date-d"1dayago"+"%Y-%m-%d"获取n分钟前
系统 2019-09-27 17:48:12 2156