主要内容 Python多进程与多线程 Python使用Hadoop分布式计算库mrjob Python使用Spark分布式计算库PySpark 例子:分别使用MapReduce和Spark实现wordcount 正则表达式简介 日期和时间 常用内建模块: collections: itertools 进程与线程 进程:程序的一次执行(程序装载入内存,系统分配资源运行) 每个进程有自己的内存空间.数据栈等,只能使用进程间通讯,而不能直接共享信息 线程:所有线程运行在同一个进程中,共享相同的运行环境…
一.进程与线程 1.进程:程序的一次执行(程序装载入内存,系统分配资源运行).n 每个进程有自己的内存空间.数据栈等,只能使用进程间通讯,而不能直接共享信息 2.线程:所有线程运行在同一个进程中,共享相同的运行环境. (1)n 每个独立的线程有一个程序运行的入口.顺序执行序列和程序的出口. (2) 线程的运行可以被抢占(中断),或暂时被挂起(睡眠),让其他线程运行(让步).n (3)一个进程中的各个线程间共享同一片数据空间. 二.全局解释器锁GIL 1.GIL全称全局解释器锁Global Int…
Python 没有包括相应日期和时间的内置类型.只是提供了3个相应的模块,能够採用多种表示管理日期和时间值: *    time 模块由底层C库提供与时间相关的函数.它包括一些函数用于获取时钟时间和处理器的执行时间,还提供了基本解析和字符串格式化工具   *    datetime 模块为日期.时间以及日期时间值提供一个更高层接口. datetime 中的类支持算术.比較和时区配置. *    calendar 模块能够创建周.月和年的格式化表示. 它还能够用来计算反复事件.给定日期是星期几,以…
Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法. 高级别的网络服务模块 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发. 什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. socket()函数 Pyt…
在Python中有一个概念叫做模块(module),比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 模块文件以.py后缀结尾,文件名不要与保留字重名.    例如:aname.py     文件名为aname模块的Python代码. 一.模块的引入: 在Python中用关键字import来引入某个模块,比如要引用模块math,就可以在文件最开始的地方用import math来引入.在调用math模块中的函数时,必须这样…
ubprocess包主要功能是运行外部的命令和程序.从这个意义上来说,subprocess的功能与shell类似. subprocess以及经常使用的封装函数 当我们执行python的时候,我们都是在创建并执行一个进程. 在Python中.我们通过标准库中的subprocess包来fork一个子进程,并执行一个外部的程序. subprocess包中定义有数个创建子进程的函数.这些函数分别以不同的方式创建子进程.所以我们能够依据须要来从中选取一个使用. 另外subprocess还提供了一些管理标准…
1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不是想说党员的批评与自我批评.表明意思上,自省(introspection)是一种自我检查行为.在计算机编程中,自省是指这种能力:检查某些事物以确定它是什么.它知道什么以及它能做什么.自省向程序员提供了极大的灵活性和控制力. 本文介绍了 Python 编程语言的自省能力.整个 Python 语言对自省提供了深入…
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),n个 .py 文件组成的代码集合就称为模块. 如:os 是系统相关的模块:file是文件操作相关的模块 模块分为三种: 自定义模块 内置模块 开源模块 自定义模块 1.定义模块 情景一: 情景二: 情景三: 2.导入模块 Python之所以应用越来越广泛,在…
python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.python语法有强制可读性,较少的底层语法元素,编程简单,语法简洁.10%的C语言的代码量,非常少的开发时间,非常少的维护量,10倍的产出. python有第三方库,13万的第三方库,快速增长的计算生态,开放共享,生态高产,跨多个操作系统平台. 涉及到操作系统底层,还是需要用C,用C可以写成python的接…
NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据).这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展.redis.memcached是典型的并且使用比较多的NoSQL之一. NoSQL之Redis Redis是一个key-value存储系统.和Memcached类似,它支持存储…