- 军军小站|张军博客
搜索到与相关的文章
Python

Python在cmd上打印彩色文字实现过程详解

前言在Windows上编写python程序时,有时候需要对输出的文字颜色进行设置,特别是日志显示,不同级别的日志设置不同的颜色进行展示可以直观查看。本文主要描述通过ctypes.windll.kernel32调用GetStdHandle()和SetConsoleTextAttribute()两个API实现来实现Windows控制台的彩色背景及彩色文字。基本概念描述首先分别介绍GetStdHandle()和SetConsoleTextAttribute()这

系统 2019-09-27 17:49:30 1836

Python

在Python中使用异步Socket编程性能测试

OK,首先写一个pythonsocket的server段,对开放三个端口:10000,10001,10002.krondo的例子中是每个server绑定一个端口,测试的时候需要分别开3个shell,分别运行.这太麻烦了,就分别用三个Thread来运行这些services.importoptparseimportosimportsocketimporttimefromthreadingimportThreadimportStringIOtxt='''1111

系统 2019-09-27 17:38:44 1836

Python

Python with用法:自动关闭文件进程

实际上,Python提供了with语句来管理资源关闭。比如可以把打开的文件放在with语句中,这样with语句就会帮我们自动关闭文件。with语句的语法格式如下:withcontextexpression[astarget(s)]:with代码块在上面的语法格式中,context_expression用于创建可自动关闭的资源。例如,程序使用with语句来读取文件:importcodecs#使用with语句打开文件,该语句会负责关闭文件withcodecs.

系统 2019-09-27 17:38:03 1836

Python

Python中字典的基本知识初步介绍

字典是可变的,并且可以存储任意数量的Python对象,包括其他容器类型另一个容器类型。字典包括键对(称为项目)及其相应的值。Python字典也被称为关联数组或哈希表。字典的一般语法如下:dict={'Alice':'2341','Beth':'9102','Cecil':'3258'}可以用下面的方式创建字典:dict1={'abc':456};dict2={'abc':123,98.6:37};每个按键都来自它的值用冒号(:),该项目以逗号分隔,整个事情

系统 2019-09-27 17:37:59 1836

Python

使用FastCGI部署Python的Django应用的教程

作为一个mod_python模块的替代,你可以考虑使用mod_wsgi模块,此模块开发的时间比mod_python的开发时间离现在更近一些,在Django社区已有一些使用。一个完整的概述超出了本书的范围,你可以从官方的Django文档查看到更多的信息。使用FastCGI部署Django应用尽管将使用Apache和mod_python搭建Django环境是最具鲁棒性的,但在很多虚拟主机平台上,往往只能使用FastCGI此外,在很多情况下,FastCGI能够提

系统 2019-09-27 17:37:35 1836

Python

为什么从Python 3.6开始字典有序并效率更高

在Python3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。但是从Python3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A的后面。不仅如此,从Python3.6开始,下面的三种遍历操作,效率要高于Python3.5之前:forkeyin字典forvaluein字典.values()forkey

系统 2019-09-27 17:52:03 1835

Python

python字符串切割:str.split()与re.split()的对比分析

1、str.split不支持正则及多个切割符号,不感知空格的数量,比如用空格切割,会出现下面情况。>>>s1="aabbcc">>>s1.split('')['aa','bb','','cc']因此split只适合简单的字符分割2、re.split,支持正则及多个字符切割>>>printlineabcaa;bb,cc|dd(xx).xxx12.12'xxxx按空格切>>>re.split(r'',line)['abc','aa;bb,cc','|','d

系统 2019-09-27 17:50:51 1835

Python

详解DeBug Python神级工具PySnooper

PySnooper在GitHub上自嘲是一个“乞丐版”调试工具(poorman'sdebugger)。一般情况下,在编写Python代码时,如果想弄清楚为什么Python代码没有按照预期执行、哪些代码在运行哪些没在运行、局部变量又是什么,我们会使用包含断点和观察模式等功能的调试器,或者直接使用print语句打印出来。但上面的方法都比较麻烦,例如使用调试器需要进行繁琐的设置,使用print打印也要很仔细。与它们相比,使用PySnooper只需为要调试的函数添

系统 2019-09-27 17:50:04 1835

Python

121 Python程序中的线程操作-线程定时器

目录一、线程定时器二、用法一、线程定时器线程定时器也是定时器,就是定时之后开启一条线程二、用法'''线程定时器,就是规定时间后开启一条线程'''deftask():print('线程执行了')time.sleep(2)print('线程结束了')t=Timer(4,task)#间隔时间,功能函数t.start()

系统 2019-09-27 17:49:44 1835

Python

python SQLAlchemy的Mapping与Declarative详解

前面介绍过vSQLAlchemy中的Engine和Connection,这两个对象用在rowSQL(原生的sql语句)上操作,而ORM(ObjectRelationalMapper)则是一种用面向对象的思维来操作表数据的技术。所谓ORM就是Python对象到数据表的一种映射关系。以前SQLAlchemy是怎么把Python对象和数据库中表里面的每条记录进行映射的呢?通过一个mapping函数先来看个例子:fromsqlalchemyimportTable,

系统 2019-09-27 17:48:55 1835