搜索到与相关的文章
Python

Python 中的上下文管理器

Python中的上下文管理器withexpression[astarget]:with-body上下文管理器是为with语句而生。只要实现了上下文管理器协议__enter__与__exit__,就可以使用with语句。__enter__通常执行一些初始化操作,并且该函数的返回值会赋值给可选的astarget中的target变量。__exit__执行资源清理工作。它接收三个参数,异常类型,异常实例,和异常栈,根据这些异常信息,__exit__可以选择进行相应

系统 2019-09-27 17:51:21 2144

Python

2.Python函数的进阶

1.今日内容1.1函数的参数*的魔性用法函数形参最终顺序1.2名称空间全局名称空间,局部名称空间,内置名称空间取值顺序与加载顺序作用域内置函数:globals()locals()1.3高阶函数(函数的嵌套)1.4关键字:globalnonlocal2.内容详细2.1函数的参数昨天我们从形参角度,讲了两种参数,一个是位置参数,位置参数主要是实参与形参从左至右一一对应,一个是默认值参数,默认值参数,如果实参不传参,则形参使用默认参数。那么无论是位置参数,还是默

系统 2019-09-27 17:50:44 2144

Python

python对绑定事件的鼠标、按键的判断实例

当多个事件绑定了同一个命令,那么在命令内部根据不同的事件进行处理的时候,怎么确定哪个事件发生了呢,用下面的来检测,经过测试处理tab键和alt键不能识别,其他单个都能被识别。还有个事件的type属性,这个经过测试键盘事件返回字符2,鼠标返回字符2,可以根据这个再进行判断反会的是键盘事件还是鼠标事件。#:鼠标左击事件#:鼠标中击事件#:鼠标右击事件#:双击事件#:三击事件fromtkinterimport*tk=Tk()canvas=Canvas(width

系统 2019-09-27 17:50:36 2144

Python

python openCV 基于TCP的socket网络传输视频(一)

createtime:2019年7月17日我在网上找了好多,现在基本实现了传输视频的功能,其思路是:首先得先了解如何使用openCV采集摄像头数据,其次得了解pythonsocket网络编程。因为socket不能直接传输openCV采集的数据,所以还需要转码操作。在下个版本,我用的类的方式实现了视频传输,这个版本先用平常方法实现的,也是一个客户端,一个服务端。服务端#!/usr/bin/python#-*-coding:utf-8-*-importsock

系统 2019-09-27 17:50:02 2144

Python

使用Python中的greenlet包实现并发编程的入门教程

1动机greenlet包是Stackless的副产品,其将微线程称为“tasklet”。tasklet运行在伪并发中,使用channel进行同步数据交换。一个”greenlet”,是一个更加原始的微线程的概念,但是没有调度,或者叫做协程。这在你需要控制你的代码时很有用。你可以自己构造微线程的调度器;也可以使用”greenlet”实现高级的控制流。例如可以重新创建构造器;不同于Python的构造器,我们的构造器可以嵌套的调用函数,而被嵌套的函数也可以yiel

系统 2019-09-27 17:49:28 2144

Python

简单分析Python中用fork()函数生成的子进程

python的osmodule中有fork()函数用于生成子进程,生成的子进程是父进程的镜像,但是它们有各自的地址空间,子进程复制一份父进程内存给自己,两个进程之间的执行是相互独立的,其执行顺序可以是不确定的、随机的、不可预测的,这点与多线程的执行顺序相似。importosdefchild():print'Anewchild:',os.getpid()print'Parentidis:',os.getppid()os._exit(0)defparent()

系统 2019-09-27 17:48:24 2144

Python

python 之 并发编程(守护进程、互斥锁、IPC通信机制)

9.5守护进程主进程创建守护进程其一:守护进程会在主进程代码执行结束后就立即终止其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError:daemonicprocessesarenotallowedtohavechildren注意:进程之间是互相独立的,主进程代码运行结束,守护进程随即终止p.daemon:默认值为False,如果设为True,代表p为后台运行的守护进程,当p的父进程终止时,p也随之终止,并且设定为True后,p不能创建

系统 2019-09-27 17:48:24 2144

Python

Python类中的魔法方法之 __slots__原理解析

在类中每次实例化一个对象都会生产一个字典来保存一个对象的所有的实例属性,这样非常的有用处,可以使我们任意的去设置新的属性。每次实例化一个对象python都会分配一个固定大小内存的字典来保存属性,如果对象很多的情况下会浪费内存空间。可通过__slots__方法告诉python不要使用字典,而且只给一个固定集合的属性分配空间classFoo(object):__slots__=("x","y","z")def__init__(self,x,y):self.x=

系统 2019-09-27 17:47:50 2144

Python

python selenium爬取斗鱼所有直播房间信息过程详解

还是分析一下大体的流程:首先还是Chrome浏览器抓包分析元素,这是网址:https://www.douyu.com/directory/all发现所有房间的信息都是保存在一个无序列表中的li中,所以我们可以先获取一个装有li的element对象的列表,然后在对每个element逐一操作分析斗鱼的翻页,有一个下一页按钮,是个li,class="dy-Pagination-item-custom",但是当烦到最后一页的时候,class="dy-Paginat

系统 2019-09-27 17:47:21 2144

Python

Python工程师面试必备25条Python知识点

1.到底什么是Python?你可以在回答中与其他技术进行对比下面是一些关键点:Python是一种解释型语言。这就是说,与C语言和C的衍生语言不同,Python代码在运行之前不需要编译。其他解释型语言还包括PHP和Ruby。Python是动态类型语言,指的是你在声明变量时,不需要说明变量的类型。你可以直接编写类似x=111和x="I'mastring"这样的代码,程序不会报错。Python非常适合面向对象的编程(OOP),因为它支持通过组合(composit

系统 2019-09-27 17:47:20 2144