python基础
孤狼长弓
这个作者很懒,什么都没留下…
展开
-
常见Python运行时错误
“SyntaxError :invalid syntax” (1)忘记在 if , elif , else , for , while , class ,def 声明末尾添加 :if spam == 42 print('Hello!')(2)使用 = 而不是 ==if spam = 42: print('Hello!')“IndentationError:unexpected in原创 2016-01-10 21:21:51 · 806 阅读 · 0 评论 -
python中的生成器
定义生成器是一次生成一个值的特殊类型函数,可以将其视为可恢复函数。调用该函数将返回一个可用于生成连续 x 值的生成器【Generator】,简单的说就是在函数的执行过程中,yield语句会把你需要的值返回给调用生成器的地方,然后退出函数,下一次调用生成器函数的时候又从上次中断的地方开始执行,而生成器内的所有变量参数都会被保存下来供下一次使用。任何包含yield语句的函数称为生成器。生成器的使用在Py原创 2015-12-27 16:28:40 · 265 阅读 · 0 评论 -
python中的迭代器
在python中,很多对象都是可以通过for语句来直接遍历的,例如list、string、dict等等,这些对象都可以被称为可迭代对象。概念所谓的迭代器就是具有next方法(这个方法在调用时不需要任何参数)的对象。在调用next方法时,迭代器会返回它的下一个值。如果next方法被调用时,但迭代器没有值可以返回,就会发生一个StopIteration异常。_iter_()和next()方法这两个方法是原创 2015-12-27 16:09:18 · 308 阅读 · 0 评论 -
python基本概念
常量也即字面意义上的常量,如同5、1.23、9.25e-3这样的数,或者如同’This is a string’、”It’s a string!”这样的字符串。它们被称作字面意义上的,因为它们具备字面的意义(按照它们的字面意义使用它们的值)。字符串即字符的序列,它本上就是一组单词。 使用单引号(’) 你可以用单引号指示字符串,就如同’Hello world!’这样。所有的空白,即空格和制表符都照原创 2016-01-10 15:20:24 · 277 阅读 · 0 评论 -
显示有限的接口到外部
当发布python第三方package时, 并不希望代码中所有的函数或者class可以被外部import, 在init.py中添加all属性,该list中填写可以import的类或者函数名, 可以起到限制的import的作用, 防止外部import其他函数或者类。原创 2015-12-23 23:24:17 · 311 阅读 · 0 评论 -
浅谈with语句
上下文管理器要使用 with 语句,首先要明白上下文管理器这一概念。有了上下文管理器,with 语句才能工作。上下文管理协议(Context Management Protocol) 包含方法 enter() 和 exit(),支持该协议的对象要实现这两个方法。上下文管理器(Context Manager) 支持上下文管理协议的对象,这种对象实现了enter() 和 exit() 方法。上下文管原创 2015-12-23 21:53:11 · 856 阅读 · 0 评论 -
py2exe打包python程序
py2exe简介py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。py2exe用法如果你有一个名为test.py的python脚本,你想把它转换为运行在windows上的可执行程序,并运行在没有安装python的windows系统上,那么首先你应写一个用于发布程序的设置脚原创 2015-12-02 20:59:31 · 446 阅读 · 0 评论 -
PyInstaller-2.1打包python程序
安装1.下载解压PyInstaller-2.1.zip,可以放在任意目录2.cd C:\PyInstaller-2.1 执行python PyInstaller.py 若出现如下错误,则需要安装pywin32-218.win32-py2.7.exe 3.继续执行python PyInstaller.py 若出现以下现象,则成功 命令执行方式方式一 cd C:\PyInstaller-2原创 2015-12-02 21:27:22 · 903 阅读 · 0 评论 -
‘python’不是内部或外部命令
发现问题我们安装python后,运行cmd执行python时,可能会出现如下情况:解决问题运行->cmd set PATH=%path%;C:\Python27原创 2015-12-02 20:49:06 · 551 阅读 · 0 评论 -
python线程池
线程池概念线程池是预先创建线程的一种技术。线程池在还没有任务到来之前,创建一定数量的线程,放入空闲队列中。这些线程都是处于睡眠状态,即均为启动,不消耗CPU,而只是占用较小的内存空间。当请求到来之后,缓冲池给这次请求分配一个空闲线程,把请求传入此线程中运行,进行处理。如果所有线程池线程都始终保持繁忙,但队列中包含挂起的工作,则线程池将在一段时间后创建另一个辅助线程但线程的数目永远不会超过最大值。超过原创 2015-12-31 10:58:07 · 432 阅读 · 0 评论 -
Python内置函数大全
数学运算类abs(x) 求绝对值。 (1)参数可以是整型,也可以是复数 (2)若参数是复数,则返回复数的模complex(real, imag) 创建一个复数。divmod(a, b) 分别取商和余数,(注意:整型、浮点型都可以)。float(x) 将一个字符串或数转换为浮点数,如果无参数将返回0.0。int(x, base) 将一个字符转换为int类型,base表示进制。long(原创 2016-01-17 16:28:46 · 398 阅读 · 0 评论 -
初识全局解释器锁(GIL)
**GIL概念英文全称:Global Interceptor Lock中文解释:全局解释器锁用途:Python代码的执行由Python 虚拟机(也叫解释器主循环,CPython版本)来控制,Python 在设计之初就考虑到要在解释器的主循环中,同时只有一个线程在执行,即在任意时刻,只有一个线程在解释器中运行。对Python 虚拟机的访问由全局解释器锁(GIL)来控制,正是这个锁能保证同一时刻只有一个原创 2015-11-28 22:53:29 · 856 阅读 · 0 评论 -
Python中*args 和**kwargs
*args位置参数 , 把参数收集到一个元组中,作为变量args。def fun_var_args(farg, *args): print "arg:", farg for value in args: print "another arg:", value fun_var_args(1, "two", 3) # *args可以当作可容纳多个变量组成的原创 2016-01-17 09:40:56 · 338 阅读 · 0 评论 -
Python是如何进行内存管理的
Python的内存管理主要有三种机制:引用计数机制,垃圾回收机制和内存池机制。引用计数机制简介 python内部使用引用计数,来保持追踪内存中的对象,Python内部记录了对象有多少个引用,即引用计数,当对象被创建时就创建了一个引用计数,当对象不再需要时,这个对象的引用计数为0时,它被垃圾回收。特性 1.当给一个对象分配一个新名称或者将一个对象放入一个容器(列表、元组或字典)时,该对象的引用计数原创 2015-12-26 22:58:47 · 706 阅读 · 0 评论