一、进程和线程进程假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪费了CPU资源。是不是在程序A读取数据的过程中,让程序B去执行,当程序A读取完数据之后,让程序B暂停,然后让程序A继续执行?当然没问题,但这里有一个关键词:切换既然是切换,那么这就涉及到了状态的保存,状态的恢复,加上程序A与程序B所需要的系统资源(内存,硬盘,键盘等等)是不一样的。自然
系统 2019-09-27 17:55:24 2088
最近的django开发中用到了有序字典,所以研究了一下,以下。示例:有序字典和通常字典类似,只是它可以记录元素插入其中的顺序,而一般字典是会以任意的顺序迭代的。普通字典:由上面的结果可以看出对普通字典进行遍历,输出结果是无序的。下面是有序字典(需要导入collections包):对比两种输出结果,不难发现,有序字典可以按字典中元素的插入顺序来输出。上面两个例子之所以字典中插入元素,而不是一开始就将字典中的元素定义好,是因为有序字典的作用只是记住元素插入顺序
系统 2019-09-27 17:55:00 2088
本文实例讲述了python3.6中@property装饰器的使用方法。分享给大家供大家参考,具体如下:1、@property装饰器的使用场景简单记录如下:负责把一个方法变成属性调用;可以把一个getter方法变成属性,@property本身又创建了另一个装饰器@score.setter,负责把一个setter方法变成属性赋值;只定义getter方法,不定义setter方法就是一个只读属性2、通过一个例子来加深对@property装饰器的理解:利用@prop
系统 2019-09-27 17:54:23 2088
多线程的TCP服务器,供大家参考,具体内容如下背景:同学公司的传感器设备需要将收集的数据发到服务器上,前期想写一个简单的服务器来测试下使用效果,设备收集的数据非常的重要,所以考虑使用TCP协议来实现。因为只是测试使用,所以采用多线程的方式,毕竟节省资源嘛(使用协程时会导致I/O阻塞)开门见山,直接搬上来了一、tcp_server_v1.0使用说明:1.运行环境:python3解释器,并安装socket、threading模块;2.该版本使用多线程实现的多任
系统 2019-09-27 17:53:40 2088
在学习本篇之前,如果你对Python下进行GUI编程基础内容还有不明白,推荐一篇相关文章:简单介绍利用TK在Python下进行GUI编程的教程写一个简单的界面很容易,即使是什么都不了解的情况下,这个文本转载了最简单的界面编写,下个文本介绍了TK的简单但具体的应用在python中创建一个窗口,然后显示出来。fromTkinterimport*root=Tk()root.mainloop()就3行就能够把主窗口显示出来了。root是一个变量名称,其代表了这个主
系统 2019-09-27 17:53:14 2088
字符串,列表,元组等都可以支持切片截取的操作切片:A【start:end:step】start(默认为0)切片起始位置end(默认为字符长度)切片结束位置,不包括endstep(默认为1),切片的步长,即每几个取第一个,负号表示倒序字符串的第1个字符索引为0A="abcdefg"print(A[0])#取索引0的值,结果为:aprint(A[2:4])#取索引2到4,结果为:cdprint(A[::-1])#取倒序步长1,结果为:gfedcba列表的切片列
系统 2019-09-27 17:53:02 2088
之前在GitHub有趣分享:Thanos(灭霸命令)中分享了有趣的“灭霸命令”,本博文使用Python+PyQt5实现灭霸响指,实现过程较简单,上效果图~GUI实现代码如下:#-*-coding:utf-8-*-fromPyQt5importQtCore,QtGui,QtWidgetsclassUi_MainWindow(object):defsetupUi(self,MainWindow):MainWindow.setObjectName("MainWi
系统 2019-09-27 17:52:47 2088
**装饰器**1.装饰器的概念装饰器的本质就是一个函数,它的作用是为其他函数添加一个新的功能,但是不改变原函数的源代码和调用方式。装饰器的两大原则:不修改被修饰函数的源代码不修改被修饰函数的调用方式2.装饰器的知识储备(或者我们可以理解成,一个装饰器是由什么组成)装饰器=高阶函数+函数嵌套+闭包3.装饰器的实现首先我们定义一个累加求和的函数importtimedefcal():res=0foriinrange(100):res+=itime.sleep(1
系统 2019-09-27 17:50:53 2088
在嵌入式、尤其是机器人的python编程中,经常需要实时检测用户的键盘输入来随时控制机器人,这段代码可以帮助我们提取用户输入的字符,并在按下键盘的时候作出反应。importsysimportttyimporttermiosdefreadchar():fd=sys.stdin.fileno()old_settings=termios.tcgetattr(fd)try:tty.setraw(sys.stdin.fileno())ch=sys.stdin.rea
系统 2019-09-27 17:50:35 2088
我们每个人每天都是在用微信,在程序开发过程中,我们会需要监控我们的程序,发短信监控收费,发邮件懒得看,发微信是最好的方式,而且是免费的。发现个非常好用的python库:wxpy。wxpy基于itchat,使用了Web微信的通讯协议,实现了微信登录、收发消息、搜索好友、数据统计等功能。官方文档:chats.html安装wxpy包:pipinstallwxpy一开始扫码登录,程序会保存一个.pkl文件,这个文件是程序自动保存的,下次就不需要扫码了。#-*-en
系统 2019-09-27 17:50:22 2088