在带有参数的的函数进行装饰时defpri(func):defone(*a,**b):#这里要带参func(*a,**b)#这里也要带参returnone@prideftest(*a,**b):#不定长参数print(a,b)test(1,2,a=2)对有返回值的函数进行装饰时defpri(func):defone():returnfunc()#要将func()返回returnone@prideftest():returnTrueprint(test())带
系统 2019-09-27 17:46:29 1874
在Python中,with关键字是一个替你管理实现上下文协议对象的好东西。例如:file等。示例如下:from__future__importwith_statementwithopen('cardlog.txt','r')asitem:forlineinitem:printline;在file的结束,会自动关闭该文件句柄。在python2.6中,with正式成为了关键字所以在python2.5以前,要利用with的话,需要使用:from__future_
系统 2019-09-27 17:46:19 1874
开个贴,用于记录平时经常碰到的Python的错误同时对导致错误的原因进行分析,并持续更新,方便以后查询,学习。知识在于积累嘛!微笑+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++错误:复制代码代码如下:>>>deff(x,y):printx,y>>>t=('a','b')>>>f(t)Traceback(mostrecentcalllast):File"",line1,inf(t)Typ
系统 2019-09-27 17:45:53 1874
#汇率的转化rmb_str_value=input('请输入你要转化的人民币金额')rmb_int_value=eval(rmb_str_value)us_vs_rmb=6.77usd_value=rmb_int_value/us_vs_rmbprint('美元的金额',usd_value)
系统 2019-09-27 17:45:50 1874
random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。•random.seed(x)改变随机数生成器的种子seed。一般不必特别去设定seed,Python会自动选择seed。•random.random()用于生成一个随机浮点数n,0<=n<1•random.uniform(a,b)用于生成一个指定范围内的随机浮点数,生成的随机整数a<=n<=b;•random.randint(a,b)用于生成一个指定范围内的整数,a为下限,b为上限
系统 2019-09-27 17:45:26 1874
Python变量类型变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。变量赋值Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号(=)用来给变量赋值。等号
系统 2019-09-27 17:38:21 1874
1.os.path.driname(path):返回路径的上一级路径字符串。>>>os.path.dirname('D:\Games')'D:\\'>>>2.os.path.basename(path):返回路径的最后一级目录名(文件夹名)或文件名(全称)。>>>os.path.basename('D:\Games\9yin_632\蜗牛整包\\0x0804.ini')'0x0804.ini'>>>3.os.path.splitext(file_name)
系统 2019-09-27 17:38:14 1874
代码中经常会有变量是否为None的判断,有三种主要的写法:第一种是`ifxisNone`;第二种是`ifnotx:`;第三种是`ifnotxisNone`(这句这样理解更清晰`ifnot(xisNone)`)。如果你觉得这样写没啥区别,那么你可就要小心了,这里面有一个坑。先来看一下代码:>>>x=1>>>notxFalse>>>x=[1]>>>notxFalse>>>x=0>>>notxTrue>>>x=[0]#Youdon'twanttofallinth
系统 2019-09-27 17:38:05 1874
GIL在Python中,由于历史原因(GIL),使得Python中多线程的效果非常不理想.GIL使得任何时刻Python只能利用一个CPU核,并且它的调度算法简单粗暴:多线程中,让每个线程运行一段时间t,然后强行挂起该线程,继而去运行其他线程,如此周而复始,直到所有线程结束.这使得无法有效利用计算机系统中的"局部性",频繁的线程切换也对缓存不是很友好,造成资源的浪费.据说Python官方曾经实现了一个去除GIL的Python解释器,但是其效果还不如有GIL
系统 2019-09-27 17:37:58 1874
Python的标准库中的os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。下面列出了一些在os模块中比较有用的部分。它们中的大多数都简单明了。os.sep可以取代操作系统特定的路径分隔符。windows下为“\\”os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Un
系统 2019-09-27 17:37:58 1874