python高级
文章平均质量分 66
qwerLoL123456
这个作者很懒,什么都没留下…
展开
-
多进程
1. 多线程编写玩的程序在还没有运行的情况下,称之为程序。正在运行的代码,就成了进程,进程除了包含代码外,还需要运行环境等。在计算机上,我们应该如何实现多线程呢?例1:我们来尝试实现唱歌和跳舞在生活中我们唱一首歌和跳一支舞肯定是不间断的,这里我们用while循环代替import timedef sing(): while True: print("我正在唱歌……")...原创 2018-07-09 21:56:13 · 177 阅读 · 0 评论 -
Python网络编程-----TCP
TCP通信模型中,在通信开始之前,⼀定要先建⽴相关的连接,才能发送数据,类似于⽣活中,"打电话"。TCP编程分为客户端和服务器端两部分组成,所以我们需要首先完成服务器端的编程,之后完成客户端的编程,再使用客户端连接服务器端。1.TCP服务器的搭建流程(1)、socket创建⼀个套接字; (2)、bind绑定ip和port;(3)、listen使套接字变为可以被动链接;(4)、accept等待客户端...原创 2018-07-14 12:22:44 · 241 阅读 · 0 评论 -
Python网络编程-----UDP协议
要进行网络间的通信,首先要唯一标识一个进程,利用前面提到的IP和端口号我们可以唯一的标识一个进程。⽤这个标志与其它进程进⾏交互。这个就是网络编程,又称为socket(简称为套接字)编程。1. socket对象的创建socket(简称套接字)是进程间通信的⼀种⽅式,在Python中我们用socket模块来实现网络编程,在socket模块中一个socket函数可以创建socket对象。其中有两个参数,...原创 2018-07-14 09:50:30 · 451 阅读 · 0 评论 -
Python网络编程-----简述
在介绍网络编程之前,先介绍一下什么是网络。在计算机的世界里,网络就是一种辅助双方或多方能够连接在一起的工具。我们是用网络通常是为了进行远程的数据传输和资源共享。所谓的网络编程就是让不同的电脑上的软件能够进行数据传输,即网络进程间的通信。在网络编程中最重要的是协议,早起的计算机网络,都是由各厂商自己规定一套协议,IBM、Apple、和Microsoft都有各自的网络协议,互不兼容。就像人与人之间的交...原创 2018-07-13 20:45:50 · 416 阅读 · 0 评论 -
正则表达式续
1. re模块中常用到的函数1.1 search:执行正则表达式搜索并且在搜索结束后返回所匹配到的串,只返回第一次匹配到的结果.group()是_sre.SRE_Match的属性,也就是说只有_sre.SRE_Match才能调用group( )a = re.search("\d+", "呵呵哈哈8786你干什么")print(a)print(a.group())运行结果:<_sre.S...原创 2018-07-12 10:16:11 · 217 阅读 · 0 评论 -
正则表达式
正则表达式也叫做匹配模式(Pattern),它由一组具有特定含义的字符串组成,通常用于匹配和替换文本。在计算机科学中,用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。 Python为了方便大家对于正则的使用,专门为大家提供了re模块供我们使用1. 正则的单个字符的匹配 表1.常用的元字符 代码 说明 ...原创 2018-07-06 20:15:22 · 207 阅读 · 0 评论 -
可迭代对象、生成器、迭代器
什么是生成器什么是可迭代对象?在python中可迭代对象就是可以被for循环遍历的对象,常见的可迭代对象有字符串,列表,字典,set集合,元组什么是迭代器...原创 2018-07-13 15:18:47 · 219 阅读 · 0 评论 -
python的内置函数
1. abs( ) 取绝对值例子:a = -5b = 10print(abs(a))print(abs(b))结果是5102.dict 字典用法1a=["num1", "num2", "num3"]b=[1, 2, 3]print(dict(zip(a, b)))结果如下:{'num1': 1, 'num2': 2, 'num3': 3}用法2c=[("num1", 1), ("num...原创 2018-07-05 20:16:40 · 188 阅读 · 0 评论 -
协程
协程是什么?协程又称为微线程,协程的完成主要靠yeild关键字,协程执行过程中,在子程序内部可中断,然后转而执行别的子程序,在适当的时候再返回来接着执行,注意,在一个子程序中中断,去执行其他子程序,不是函数调用,有点类似CPU的中断协程的特点在于是一个线程执行,那和多线程比,协程有何优势?最大的优势就是协程极高的执行效率。因为子程序切换不是线程切换,而是由程序自身控制,因此,没有线程切换的开销,和...原创 2018-07-11 22:58:37 · 931 阅读 · 0 评论 -
多线程
1. 线程 线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。什么进程呢?进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一...原创 2018-07-11 21:45:30 · 290 阅读 · 0 评论 -
斐波那契数列的四种方法:
法1:递归def Fib1(n): if n <= 1 : return 1 else: return Fib1(n-1)+ Fib1(n-2)temp = []def Fib1_list(n): for i in range(n): temp.append(Fib1(i)) return tempa=Fi...原创 2018-07-04 22:27:52 · 610 阅读 · 0 评论 -
python高级 列表生成器
在编程中,我们有时需要生成一个列表,但是该列表可能占据大量的内存,此时列表直接加载到内存中就不再可取了,python提供一个列表生成器,列表生成器是一段生成对应列表的算法。列表生成器每一次迭代 生成器产生的对应的数会被回收。列表生成器的两种写法:1. 将列表的[]改成()下面是一个列表a=[x for x in range(100)]print(type(a))查看类型结果是<class ...原创 2018-07-04 21:23:41 · 1026 阅读 · 0 评论 -
本地进程间的通信方式
进程间是无法随意通信的,但有时候我们也需要多个进程间通信,其实操作系统也为我们提供了几种机制来实现进程间的通信;比如说:队列( queue )、管道( pipe )、进程管理器( manager )、信号量等。下面重点介绍一下队列( queue )、管道( pipe )、进程管理器( manager )。1.Queue ( 队列 )我们可以使用multiprocessing模块中的...原创 2018-07-10 19:48:53 · 861 阅读 · 0 评论 -
is和==
以cmd打开Python简单讲述is和==的区别python常见的数据类型有:整型、浮点型、bool值、元组、字符串、列表、字典、set集合、类等在介绍is和==的区别之前先讲述一下内存的空间分配内存分为四块:分别是堆、栈、数据区(用于存放常量的数据)、函数区(用来存放函数)1. 整型对整形来说在-5到256之间数据是存放在数据区的,其他的整形数据不在数据区中。在定义整型变量时,若整数在-5到25...原创 2018-07-03 20:01:50 · 170 阅读 · 0 评论 -
进程池
当我们需要的进程数量不多的时候,我们可以使用multiprocessing的Process类来创建进程。但是如果我们需要的进程特别多的时候,手动创建工作量太大了,所以Python也为我们提供了Pool(池)的方式来创建大量进程。1.进程池的创建进程池的创建需要引入multiprocessing中的Pool,下面我们来创建一个简单的进程池来模拟多人同时下载的场景,假设进程池里有5个进...原创 2018-07-10 11:42:27 · 237 阅读 · 0 评论 -
OS模块
1.os.name 获取现在正在使用的平台的信息,window系统返回nt,linux系统返回“posix”import osa=os.nameprint(a)运行结果nt2. os.rename(oldName,newName) 重命名 3. os.remove(path) 删除文件4. os.mkdir() 创建文件夹5. os.makedirs(path) 创建多个文件夹...原创 2018-07-09 22:25:13 · 226 阅读 · 0 评论 -
网络的相关知识
1、http和httpshttp(HyperText Transfer Protocol):称为超文本传输协议,是一个基于 TCP/IP 通信协议来传递数据,一个属于应用层的协议浏览器作为 HTTP 客户端通过 URL 向 HTTP 服务端即 WEB 服务器发送所有请求。Web 服 务器根据接收到的请求后,向客户端发送响应信息。HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端...原创 2018-09-12 22:35:29 · 217 阅读 · 0 评论