随笔分类 - python自动化
摘要:一、gevent :实现遇到IO操作就人为指定cpu切换的协程操作。 是一个第三方库,可以轻松通过gevent实现并发同步或异步编程,在gevent中用到的主要模式是Greenlet,它是以C扩展块形式接入Python的轻量级协程。Greenlet全部运行在主程序操作系统进程的内部,但他们被协作式地
阅读全文
摘要:进程锁lock 进程间通信:队列 队列常用方法 生产者消费者模型 在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度。 为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。
阅读全文
摘要:一、背景知识: 进程的概念起源于操作系统,是操作系统最核心的概念。 进程是对正在运行程序的一个抽象,操作系统的其它所有内容都是围绕进程的概念展开的。 进程是操作系统提供的最古老也是最重要大的抽象概念之一。即使可以利用的cpu只有一个,也能保证支持伪并发的能力。将一个单独的cpu变成多个虚拟的cpu(
阅读全文
摘要:一、为什么要有操作系统 现代的计算机系统主要是由一个或者多个处理器,主存、磁盘、硬盘、键盘、鼠标、先回去、打印机、网络接口及其他的输入输出设备组成。 一般而言,现代计算机系统是一个复杂的系统。如果每个应用程序员都必须掌握该系统的所有细节,那就不可能再编写代码类,会严重影响程序员的开发效率。 并且管理
阅读全文
摘要:#异常处理 #异常:程序运行时发生错误的信号(异常的追踪信息、异常类、异常值) #python中的异常种类:在python中不同的异常可以用不同的类型(python中统一类类与类型)去标识,不同的类对象标识不同的异常,一个异常标识一种错误 #常用异常 AttributeError #试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x IOError #输入/输出异常;基本上是无...
阅读全文
摘要:##服务端import socket,struct,json,os class MYTCPServer: address_family=socket.AF_INET socket_type=socket.SOCK_STREAM allow_reuse_address=False max_packet_size=8192 coding='utf-8' ...
阅读全文
摘要:Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 所以,我们无需深入理解tcp/udp协
阅读全文
摘要:''' 定义MySQL类 1、对象有id、host、port三个属性 2、定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3、提供两种实例化方式,方式一:用户传入host和port方式 方式二:从配置文件中获取 4、为对象定制方法,save和get,save能自动将对象序列化到文件中,文件好为id,文件路径为配置 文件中DB_PATH,;get方法用来从文件...
阅读全文
摘要:一、什么是继承? 继承是一种创建类的方式,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 二、新式类和经典类 python2中类分为:新式类和经典类 class Foo(object): #继承与object及其子类都是新式类 pass class Bar: #没有
阅读全文
摘要:一、 一、面向过程:核心是过程,过程就是解决过程的步骤,即先干什么,再干什么,基于面向过程设计的程序,就好比在设计一条流水,是一种机械思维方法 优点:复杂的问题简单化 缺点:可扩展性差(牵一发而动全身) 应用场景:Linux内核,httpd,git 二、面向对象:核心是对象,要理解对象应该把自己当成上帝,在上帝眼中一切存在的事务都是对象...
阅读全文
摘要:import subprocess ''' sh-3.2# ls /Users/egon/Desktop |grep txt$ mysql.txt tt.txt 事物.txt ''' res1=subprocess.Popen('ls /Users/jieli/Desktop',shell=True,stdout=subprocess.PIPE) res=subprocess.Popen(...
阅读全文
摘要:hash:一种算法 ,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法三个特点:1.内容相同则hash运算结果相同,内容稍微改变则hash值则变2.不可逆推3.相同算法:无论校验多长的数据,得到的哈希值长度固定。
阅读全文
摘要:针对:标题 :下面是key=value形式的配置文件,如下:
阅读全文
摘要:xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今很多传统公司如金融行业的很多系统的接口还主要是xml。 xml的格式如下,就是通过<>节点来区别数据结构的: xml协议在各个语言里的
阅读全文
摘要:shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写;key必须为字符串,而值可以是python所支持的数据类型
阅读全文
摘要:之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值。 什么是序列化? 我们把对象
阅读全文
摘要:高级的 文件、文件夹、压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length]) 将文件内容拷贝到另一个文件中 shutil.copyfile(src, dst)拷贝文件 shutil.copymode(src, dst)仅拷贝权限。内容、组、用户均不变 sh
阅读全文
摘要:1、打印进度条 2、 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 sys.path 返回模块的搜索路径,初始化时使用PYT
阅读全文
摘要:os模块是与操作系统交互的一个接口 1、应用:返回上上级目录 2、方法介绍
阅读全文
摘要:1、如果不指定filename,则默认打印到终端 2、指定日志级别的方式: level = 10 level = logging.error 日志级别种类: CRITICAL = 50 FATAL = CRITICAL ERROR = 40 WARNING = 30 WARN = WARNING I
阅读全文