一关于局部变量整体变量的理解以及somethingabout不可变对象defChangeInt(a):...a=10...b=2ChangeInt(b)print(b)2这个不可变对象的实例让我产生了疑惑,于是我做了如下:defChangeInt(a):...a=10...a=2ChangeInt(a)print(a)2这个其实很好理解,因为a=10只是个局部变量,也没有return无法对外部造成影响。哪怕我做如下操作:defChangeInt(a):..
系统 2019-09-27 17:53:47 2049
列表推导与生成器表达式当我们创建了一个列表的时候,就创建了一个可以迭代的对象:复制代码代码如下:>>>squares=[n*nforninrange(3)]>>>foriinsquares:printi014这种创建列表的操作很常见,称为列表推导。但是像列表这样的迭代器,比如str、file等,虽然用起来很方便,但有一点,它们是储存在内存中的,如果值很大,会很麻烦。而生成器表达式不同,它执行的计算与列表包含相同,但会迭代的生成结果。它的语法与列表推导一样,
系统 2019-09-27 17:53:14 2049
设计模式的重要性,不再赘述,分方法和类型逐一记录,以备忘。一、单例模式单例模式,顾名思义,python中的某个类有且仅有一个对象(实例);1.应用场景:某个实例必须保证全局唯一性,如读取某些配置文件的实例,需要确保在任意地方都是相同配置值;2.实现方法:使用python中的基类object中__new__();3.代码:classsingleton(object):def__new__(cls,*args,**kw):ifnothasattr(cls,'_
系统 2019-09-27 17:52:35 2049
工厂模式,类似实际的制造车间中,根据订单的需求来生成/创建某个实例。1.应用场景:需要创建的实例不确定,由输入的数据决定;2.实现方法:实现一个独立的类,接收传入的需要创建实例的名称,在该类中实现创建某个具体实例。3.代码:#coding:utf-8classPerson(object):def__init__(self):self.name=Noneself.gender=NonedefgetName(self):returnself.namedefge
系统 2019-09-27 17:52:30 2049
子曰:“工欲善其事,必先利其器。”学习Python就需要有编译Python程序的软件,一般情况下,我们选择在Python官网下载对应版本的Python然后用记事本编写,再在终端进行编译运行即可,但是对于我这样懒的小白,我喜欢装一些方便的软件来辅助我编写程序。在学习Java时,正常情况选择安装JDK然后配置环境变量后,用记事本编写程序再在终端编译运行即可,而我一般选择安装JDK+MyEclipse。将Python和Java进行类比的话,在Python中使用P
系统 2019-09-27 17:51:16 2049
计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现:age=20ifage>=18:print'yourageis',ageprint'adult'print'END'注意:==Python代码的缩进规则==。具有相同缩进的代码被视为代码块,上面的3,4行print语句就构成一个代码块(但不包括第5行的print)。如果if语句判断为True,就会执行这个代码块。
系统 2019-09-27 17:51:01 2049
#/usr/bin/envpython#coding:utf-8#进程检测程序importosimportpsutilimportdatetime#获取用户输入的PID#获取pid对应的应用名p=psutil.Process(os.getpid())print('Processname:%s'%p.name())#获取进程bin路径print('Processbinpath:%s'%p.exe())#获取pid对应的路径print('Processpath
系统 2019-09-27 17:50:43 2049
当多个事件绑定了同一个命令,那么在命令内部根据不同的事件进行处理的时候,怎么确定哪个事件发生了呢,用下面的来检测,经过测试处理tab键和alt键不能识别,其他单个都能被识别。还有个事件的type属性,这个经过测试键盘事件返回字符2,鼠标返回字符2,可以根据这个再进行判断反会的是键盘事件还是鼠标事件。#:鼠标左击事件#:鼠标中击事件#:鼠标右击事件#:双击事件#:三击事件fromtkinterimport*tk=Tk()canvas=Canvas(width
系统 2019-09-27 17:50:36 2049
如下所示:#!/usr/bin/envpython3#-*-coding:utf-8-*-importsqlite3conn=sqlite3.connect('test.db')#创建一个Cursor:cursor=conn.cursor()#查询记录:conn=sqlite3.connect('calendar.db')cursor=conn.cursor()#执行查询语句:cursor.execute('select*fromperpetualCale
系统 2019-09-27 17:50:18 2049
下面先给大家介绍下Python3判断2个字典相同的方法,Python自带的数据结构dict非常好用,之前不知道怎么比较2个字典是否相同,做法是一个一个key比较过去。。。现在想到可以直接用==进行判断!!!a=dict(one=1,two=2,three=3)b={'one':1,'two':2,'three':3}c=dict(zip(['one','two','three'],[1,2,3]))d=dict([('two',2),('one',1),(
系统 2019-09-27 17:50:06 2049