搜索到与相关的文章
Python

Python高效编程

工作中经常要处理各种各样的数据,遇到项目赶进度的时候自己写函数容易浪费时间。Python中有很多内置函数帮你提高工作效率!一:在列表,字典中根据条件筛选数据1.假设有一个数字列表data,过滤列表中的负数列表推导式result=[iforiindataifi>=0]filterresult=filter(lambdax:x>=0,data)2.学生的数学分数以字典形式存储,筛选其中分数大于80分的同学d={x:randint(50,100)forxinra

系统 2019-09-27 17:55:58 2153

Python

python 装饰器 初步认识

首先理解Python的函数能像普通的对象一样能作为参数传递给其他函数,可以被赋值给其他变量,可以作为返回值,可以被定义在另外一个函数内。前面的文章已经对闭包做了介绍,再次进行延伸和理解一下装饰器,主要用于不在改变源代码的情况下进行添加功能,装饰器利用闭包来实现,一般和闭包一起使用。装饰器返回一个函数对象,简单理解在原函数功能上又加入新功能并返回一个和原函数名相同的函数对象。deffuncout(func):deffuncIn(x,y):func(x,y)#

系统 2019-09-27 17:55:41 2153

Python

python 键盘中断子线程及graceful exiting方案

最近需要实现一个服务程序的gracefulexiting,保证在退出前关闭所有已创建的子线程python借助KeyboardInterrupted异常响应键盘中断,因此首先尝试在子线程中try-catch这个异常(失败)查阅原因,键盘中断只有主线程可以响应并处理,子线程无法收到这个异常。因此可以使用类似这样的结构:cond=Truedefstart_task():whilecond:#dosomethingdefterminate_task():#brea

系统 2019-09-27 17:55:29 2153

Python

Python2与Python3共存

困扰最近被一个问题困扰了很久,就是Python2和Python3共存pip的使用问题,本来是一个很简单的问题。但是我的Python2的pip就是用不了。困扰了我两天的时间。最后发现是我在Python3中换源导致的。如果大家在电脑中也安装了Python2和Python3两个版本的话。不建议在Python3中设置永久换源的配置文件,因为这样可能导致Python2的pip用不了。Python2与Python3共存接下来说下如何配置Python2与Python3共

系统 2019-09-27 17:55:11 2153

Python

纯Python开发的nosql数据库CodernityDB介绍和使用实例

看看这个logo,有些像python的小蛇吧。这次介绍的数据库codernityDB是纯python开发的。先前用了下tinyDB这个本地数据库,也在一个api服务中用了下,一开始觉得速度有些不给力,结果一看实现的方式,真是太鸟了,居然就是json的存储,连个二进制压缩都没有。这里介绍的CodernityDB也是纯开发的一个小数据库。CodernityDB是开源的,纯Python语言(没有第三方依赖),快速,多平台的NoSQL型数据库。它有可选项支持HTT

系统 2019-09-27 17:55:03 2153

Python

经验拾忆(纯手工)=> Python-ORM之peewee:模型-字段-索引

前言去github搜"pythonorm",最高star居然不是sqlalchemy,而是peewee后来得知peewee,比sqlalchemy简单好用。值得一学哦!!我总体感觉(peewee像Django-ORM的分离版,,但比Django-ORM和SqlAlchemy小巧,简单,文档也友好)还有一个更重要的感觉就是,peewee的API方法名和SQL语句的单词基本相似。例如对比一下(关键词语法都是update和where):SQL语句:updateL

系统 2019-09-27 17:54:51 2153

Python

python程序运行进程、使用时间、剩余时间显示功能的实现代码

有很多程序运行时间比较长,如果不将运行过程输出将很难判断程序运行的时间。下边这段程序将按照上图所示的格式输出程序运行进程、已用时间、剩余时间。deftime_change(time_init):#定义将秒转换为时分秒格式的函数time_list=[]iftime_init/3600>1:time_h=int(time_init/3600)time_m=int((time_init-time_h*3600)/60)time_s=int(time_init-t

系统 2019-09-27 17:54:42 2153

Python

Python面向对象编程——基本语法

Python面向对象编程——基本语法一、类的语法上一节最后的代码其实有问题,属性名字和年龄都写死了,想传名字传不进去。classPerson(object):def__init__(self,name,age):self.name=nameself.age=agep=Person("Alex",22)print(p.name,p.age)为什么有__init__?为什么有self?此时的你一脸蒙逼,相信不画个图,你的智商是理解不了的!画图之前,你先注释掉这

系统 2019-09-27 17:54:00 2153

Python

python 小细节

1.递归时用self.函数名2.python中只有None表示空,没有null,NULL3.切片:切片的语法表达式为:[start_index:end_index:step],同时索引可分为正向和负向两种,其中:start_index表示起始索引end_index表示结束索引step表示步长,步长不能为0,且默认值为1或split()通过指定分隔符对字符串进行切片,如果参数num有指定值,则仅分隔num+1个子字符串str.split(str="",num

系统 2019-09-27 17:53:07 2153

Python

Python实现字符串反转的几种方法

要求:在Python环境下用尽可能多的方法反转字符串,例如将s="abcdef"反转成"fedcba"第一种:使用字符串切片result=s[::-1]第二种:使用列表的reverse方法l=list(s)l.reverse()result="".join(l)当然下面也行l=list(s)result="".join(l[::-1])第三种:使用reduceresult=reduce(lambdax,y:y+x,s)第四种:使用递归函数deffunc(s

系统 2019-09-27 17:53:05 2153