文章作者:Tyan博客:noahsnail.com|CSDN|简书1.引言众所周知,Python语言简单、易学、开源、具有丰富的库,Python的第一个编译器是用C语言实现的。但Python的缺点也非常明显,最让人诟病的就是Python的性能问题。因此,为了提高程序的运行效率,通常会将程序的关键部分使用C或C++重写,编译成动态链接库,然后在Python(CPython)中进行调用。运行环境:Ubuntu16.04、Python2.7、Python3.5。
系统 2019-09-27 17:49:17 1915
1.模块(Module)在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件就称之为一个模块(Module)。使用模块有什么好处?最大的好处是大大提高了代码的可维护性。其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。我们在编
系统 2019-09-27 17:49:11 1915
'''利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。'''frompip._vendor.distlib.compatimportraw_inputdeftest1(n):f=""ifn>=90:f="A"elif60<=n<=89:f="B"else:f="C"print("%d成绩%s"%(n,f));num=raw_input("请输入:");num=int(num)test1(n
系统 2019-09-27 17:48:27 1915
1.何时使用线程池系统启动一个新线程的成本是比较高的,因为它涉及与操作系统的交互。在这种情形下,使用线程池可以很好地提升性能;尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池。线程池在系统启动时即创建大量空闲的线程,程序只要将一个函数提交给线程池,线程池就会启动一个空闲的线程来执行它。当该函数执行结束后,该线程并不会死亡,而是再次返回到线程池中变成空闲状态,等待执行下一个函数。使用线程池可以有效地控制系统中并发线程的数量。当系统中包含有
系统 2019-09-27 17:48:26 1915
1.初识python(python2.7)1)python既是面向过程的又可以是面向对象的。面向过程:代码由可以重用的函数构建;面向过程:代码由数据和功能组合成的对象构建。2)python是一种解释型语言,与java等编译型语言不同,在执行python程序的过程中无需编译器进行编译和链接,既在执行python代码时减少了编译环节,解释器会将源代码转换成字节码再翻译给计算机执行。3)python是一种交互式语言:在python的提示符>>>后面直接执行代码。
系统 2019-09-27 17:48:00 1915
pickle包的dump函数和load函数分别实现了数据的序列化和反序列化。一、dump()方法pickle.dump(obj,file,[,protocol])注释:序列化对象,将对象obj保存到文件file中去。参数protocol是序列化模式,默认是0(ASCII协议,表示以文本的形式进行序列化),protocol的值还可以是1和2(1和2表示以二进制的形式进行序列化。其中,1是老式的二进制协议;2是新二进制协议)。file表示保存到的类文件对象,f
系统 2019-09-27 17:47:49 1915
max()方法返回其参数最大值:最接近正无穷大的值。语法以下是max()方法的语法:max(x,y,z,....)参数x--这是一个数值表达式。y--这也是一个数值表达式。z--这是一个数值表达式。返回值此方法返回其参数的最大值。例子下面的例子显示了max()方法的使用。#!/usr/bin/pythonprint"max(80,100,1000):",max(80,100,1000)print"max(-20,100,400):",max(-20,100
系统 2019-09-27 17:47:38 1915
sqrt()方法返回x的平方根(x>0)。语法以下是sqrt()方法的语法:importmathmath.sqrt(x)注意:此函数是无法直接访问的,所以我们需要导入math模块,然后需要用math的静态对象来调用这个函数。参数x--这是一个数值表达式。返回值此方法返回x的平方根,对于x>0。例子下面的例子显示了sqrt()方法的使用。#!/usr/bin/pythonimportmath#Thiswillimportmathmoduleprint"mat
系统 2019-09-27 17:47:36 1915
0x00marshalmarshal使用的是与Python语言相关但与机器无关的二进制来读写Python对象的。这种二进制的格式也跟Python语言的版本相关,marshal序列化的格式对不同的版本的Python是不兼容的。marshal一般用于Python内部对象的序列化。一般地包括:基本类型booleans,integers,floatingpointnumbers,complexnumbers序列集合类型strings,bytes,bytearray
系统 2019-09-27 17:47:22 1915
哎,以前写博文的时候没注意,有些图片用QQ来截取,获得的图片文件名都是类似于QQ截图20120926174732-300×15.png的形式,昨天用ftp备份网站文件的时候发现,中文名在flashfxp里面显示的是乱码的,看起来好难受,所以写了一个python小脚本,爬取整个网站,然后获取每个文章页面的图片名,并判断如果是类似于QQ截图20120926174732-300×15.png的形式就输出并将该图片地址和对应的文章地址保存在文件中,然后通过该文件来
系统 2019-09-27 17:47:21 1915