Python语法速查: 20. 线程与并发】的更多相关文章

返回目录 本篇索引 (1)线程基本概念 (2)threading模块 (3)线程间同步原语资源 (4)queue (1)线程基本概念 当应用程序需要并发执行多个任务时,可以使用线程.多个线程(thread)同时运行在一个进程(process)的内部, 它们可以共享访问本进程内的全局变量数据和资源.各个线程之间的调度由操作系统负责, 具体做法是:给每个线程分配一个小的时间片,并在所有的线程之间循环切换.在具有多核的CPU上, 操作系统有时会安排尽可能使用每个CPU,从而并行执行线程. 并发编程的复…
返回目录 (1)函数基本 ● 函数是第一类对象 Python中万物皆对象,所有对象都是第一类的(first class),函数也不例外,也是第一类对象.既然是对象,那就可以当作普通的对象数据处理,比如:拥有自己的属性.可赋值给一个变量.可放入容器存储.可作为另一个函数的参数或是返回值等等.当你在使用 def 定义函数时,就相当于生成了一个函数对象. 下例中,将3个内置函数放入一个序列,并用迭代器取出后分别调用: line = 'abc,1,3.14' fun_list = [str, int,…
返回目录 (1)字符串常用方法 Python3中,字符串全都用Unicode形式,所以省去了很多以前各种转换与声明的麻烦.字符串属于序列,所有序列可用的方法(比如切片等)都可用于字符串. 注意:字符串属于不可变序列,所有处理修改字符的方法,都会生成一个新字符串返回,原字符串不会变. 字符串方法 简述 举例或说明 字符串内容检查 s.isalpha() 是否所有字符都为字母 'abc'.isalpha()   # 结果为 True s.islower() 字符串中字母是否都为小写(无视其中的非字母…
1. 数据类型与内置函数 2. 列表.元组.字典.集合操作 3. 字符串格式化 4. 字符串常用操作 5. 运算符.math模块.表达式 6. 循环与迭代 7. 函数基础 8. 类与对象 9. 函数进阶:闭包.装饰器.生成器 10. 异常 11. 模块与打包 12. 文件与输入输出 13. 操作系统服务 14. 测试与调优 15. 常用数据结构 16. 时间日期处理 附:正则表达式用法简介与速查…
返回目录 本篇索引 (1)sys模块 (2)os模块 (3)与Windows相关模块 (4)subprocess模块 (5)signal模块 (1)sys模块 sys模块用于Python解释器及其环境操作. ● sys模块的常用变量及函数 常用变量及函数 说明 常用变量 argv 传递给程序的命令行选项列表,argv[0]是程序名. modules 将模块名映射到实际存在的模块上的字典,其中只有目前已导入的模块. path 查找模块所在目录的目录名列表. platform 标识操作系统平台的字符…
返回目录 (1)简易字符串格式化 字符串属于不可变序列,只能生成新的,不能改变旧的.“字符串格式化”有点像以前C语言的sprintf,可以将若干变量代入格式化的字符串,生成一个符合要求的新字符串. 转换字符 简述 举例或说明 %d 十进制整数 'num: %d' %16   # 结果为 'num: 16' %o 八进制整数 'num: %o' %16   # 结果为 'num: 20' %x, %X 十六进制整数(大小写影响输出字母) 'num: %x' %31   # 结果为 'num: 1f…
返回目录 本篇索引 (1)array (2)bisect (3)deque (4)defaultdict (5)namedtuple (6)heapq (7)itertools (1)array array模块定义一个数组类型:array,它与列表很相似,但它的内容仅限于单一类型.如果需要有效利用存储空间,那么就需要用到array模块. 例如,要存储1000万个整数,使用列表需要约160M内存,而使用array仅需40M内存,代价是array的操作比列表要慢一些. array数组不适用于数字操作…
返回目录 (1)文件基本操作 ● 文件常用操作 内置函数或方法 描述 open(name [,mode [,buffering]]) 内置函数.用来打开文件,返回一个文件对象(file对象).详见下述 f.close() file对象方法,关闭文件. f.read() file对象方法,读取最多n个字节,若不指定n,则默认读取整个文件.读出的内容以字符串形式返回. f.readline(size=-1) file对象方法.读取整行并返回一个字符串,若指定size,则本行最多读取size个字节.读…
返回目录 (1)一些较容易搞错的运算符 一般简单的如加减乘除之类的运算符就不写了,这里主要列些一些容易搞错或忘记的运算符.运算符不仅仅只有号,有一些英文单词如 in, and 之类,也是运算符,并不是语句. 运算符 简述 举例或说明 数字操作 / 在Python3中,默认为浮点数除法:在Python2中,若除数和被除数都是整数,则默认为截断除法.若要在Python2中也为浮点数除法,需要使用: from __future__ import division 2/3   # Python3 中结果…
返回目录 本篇索引 (1)测试的基本概念 (2)doctest模块 (3)unittest模块 (4)调试器和pdb模块 (5)程序探查 (6)调优与优化 (1)测试的基本概念 对程序的各个部分建立测试,这个称为:单元测试(unit test),更进一步的是测试驱动编程(test-driven programming). 简单来说,就是“先写测试.再写程序”.是否一定要为所有的函数和模块编写测试代码, 这个目前仍有争论,因为构建完备的测试集本身就是一件工作量很大的事情.而且常常会发生这样的事情:…