Python

Python lambda表达式filter、map、reduce函数用法解析

前言lambda是表达式,用于创建匿名函数,可以和filter、map、reduce配合使用。本文环境Python3.7。一、lambda表达式lambda只包含一个语句,用于创建匿名函数。语法:lambda[arg1[,arg2,.....argn]]:expressionarg1--参数,可以有多个expression--表达式使用例子:f1=lambdax:x>10print(f1(1))#输出:Falseprint(f1(11))#输出:Truef

系统 2019-09-27 17:46:55 2058

Python

Python 之父的解析器系列之四:可视化 PEG 解析

原题|VisualizingPEGParsing作者|GuidovanRossum(Python之父)译者|豌豆花下猫(“Python猫”公众号作者)声明|本翻译是出于交流学习的目的,基于CCBY-NC-SA4.0授权协议。为便于阅读,内容略有改动。上周我展示了一个简单的PEG解析器生成器。本周我将展示生成的解析器在解析程序时实际执行的操作。我深入研究了ASCII艺术的复古世界,特别是一个名为“curses”的库,它可以在Linux和Mac的Python标

系统 2019-09-27 17:46:14 2058

Python

python如何实现异步调用函数执行

在实现异步调用之前我们先进行什么是同步调用和异步调用同步:是指完成事务的逻辑,先执行第一个事务,如果阻塞了,会一直等待,直到这个事务完成,再执行第二个事务,顺序执行异步:是和同步相对的,异步是指在处理调用这个事务的之后,不会等待这个事务的处理结果,直接处理第二个事务去了,通过状态、通知、回调来通知调用者处理结果分析一下,下面的例子:定义了一个装饰器async和A、B两个function函数A里面sleep10s,然后打印afunction字符串B里面直接打

系统 2019-09-27 17:45:52 2058

Python

[Python实战]使用栈实现简易计算器

我们这次实现的命令行计算器,支持加减乘除、括号、浮点数、负数,以及查看历史和退出功能。主要的思路:read-parse-print-loop。read阶段是指读取用户在提示符(cal>)之后输入的字符串。parse阶段包括:将用户输入的字符串分割成单个对象比如:符号+,或者数字1.2。其次将中缀表达式转化后缀表达式,接下来计算后缀表达式的数值。print阶段指的是将parse阶段的数值打印在终端上。loop阶段是指重复上述操作,除非用户输入exit符号或者

系统 2019-09-27 17:45:27 2058

Python

Python MySQLdb模块连接操作mysql数据库实例

mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法。python操作数据库需要安装一个第三方的模块,在http://mysql-python.sourceforge.net/有下载和文档。由于python的数据库模块有专门的数据库模块的规范,所以,其实不管使用哪种数据库的方法都大同小异的,这里就给出一段示范的代码:#-*-encoding:gb2312-*-importos,sys,

系统 2019-09-27 17:38:41 2058

Python

深入理解python函数递归和生成器

一、什么是递归如果函数包含了对其自身的调用,该函数就是递归的。递归做为一种算法在程序设计语言中广泛应用,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。例如,要计算1-9的9位数字的乘积,直观的算法是1*2*3*4*5*6*7*8*9,如果要计算1-10000的乘积,直观的算法就难于实现出,而递归就可以很简单的实现。请看示例:deffact(

系统 2019-09-27 17:38:31 2058

Python

Python 中 Meta Classes详解

接触过Django的同学都应该十分熟悉它的ORM系统。对于python新手而言,这是一项几乎可以被称作“黑科技”的特性:只要你在models.py中随便定义一个Model的子类,Django便可以:获取它的字段定义,并转换成表结构读取Meta内部类,并转化成相应的配置信息。对于特殊的Model(如abstract、proxy),还要进行相应的转换为没有定义objects的Model加上一个默认的Manager开发之余,我也曾脑补过其背后的原理。曾经,我认为

系统 2019-09-27 17:38:17 2058

Python

Python提取网页中超链接的方法

下面是最简单的实现方法,先将目标网页抓回来,然后通过正则匹配a标签中的href属性来获得超链接代码如下:importurllib2importreurl='http://www.sunbloger.com/'req=urllib2.Request(url)con=urllib2.urlopen(req)doc=con.read()con.close()links=re.findall(r'href\=\"(http\:\/\/[a-zA-Z0-9\.\/]

系统 2019-09-27 17:38:07 2058

Python

Python简单日志处理类分享

简单的一个python日志处理类复制代码代码如下:#/usr/bin/python#coding=utf-8importtime,typesclasslogsys:def__init__(self,project,logfilename='sys_log.txt'):self.project=projectself.logfilename=logfilenamedefget_log_time(self):returntime.strftime("%Y-%m

系统 2019-09-27 17:37:44 2058

Python

用python简单实现mysql数据同步到ElasticSearch的教程

之前博客有用logstash-input-jdbc同步mysql数据到ElasticSearch,但是由于同步时间最少是一分钟一次,无法满足线上业务,所以只能自己实现一个,但是时间比较紧,所以简单实现一个思路:网上有很多思路用什么mysql的binlog功能什么的,但是我对mysql了解实在有限,所以用一个很呆板的办法查询mysql得到数据,再插入es,因为数据量不大,而且10秒间隔同步一次,效率还可以,为了避免服务器之间的时间差和mysql更新和查询产生

系统 2019-09-27 17:37:40 2058

编程技术

lucene-索引的优化和索引过程查看

代码:(索引建立)packagebindex;importjava.io.IOException;importjava.io.PrintStream;importjava.net.URL;importjava.util.ArrayList;importjava.util.List;importjeasy.analysis.MMAnalyzer;importorg.apache.lucene.analysis.PerFieldAnalyzerWrapper;

系统 2019-08-29 23:50:30 2058

编程技术

微软企业库中的事务处理

publicboolTransfer(inttransactionAmount,intsourceAccount,intdestinationAccount){boolresult=false;//CreatetheDatabaseobject,usingthedefaultdatabaseservice.The//defaultdatabaseserviceisdeterminedthroughconfiguration.Databasedb=Datab

系统 2019-08-29 23:49:15 2058

编程技术

flash中用BitmapData类制作图片“环绕”效果

这种效果做法很多,网上到处可以搜出一大堆!本例主要是应用了BitmapData类,仿制很容易。做法:处理一张首尾相接的环绕图片,导入Flash库中,打开库,右击图片,选“链接”,“为ActionScript导出“,标识ID名为:pic场景上什么也不放。最好将场景高度设为与图片一样高。宽度随意,但要小于图片宽度。在第一帧粘帖如下代码,即可测试:importflash.display.BitmapData;importflash.geom.*;//从库里取图v

系统 2019-08-29 23:29:17 2058

编程技术

面试官最爱提的15个问题

“招聘会上往往一个细微的动作就会决定乾坤。”就业指导服务中心专家提醒毕业生参加双选会的几条注意事项,提防面试中的非语言陷阱。握手:这是你与面试官的初次见面。如果他(她)向你伸出手,却握到一只软弱无力、湿乎乎的手,那么这不是一个好的开端。你握起手来应该坚实有力,但不要太使劲,你的手应当是干暖的。你的姿势:没精打采的姿势看上去会显得疲惫不堪,你应该做到站如松、坐如钟。眼睛交流:用眼睛看着面试官,不要瞪视,因为那样显得太有进攻性。面试官说话的时候,偶尔地冷眼瞥他

系统 2019-08-29 23:25:01 2058

编程技术

OpenGL基础图形编程

一、OpenGL与3D图形世界1.1、OpenGL使人们进入三维图形世界我们生活在一个充满三维物体的三维世界中,为了使计算机能精确地再现这些物体,我们必须能在三维空间描绘这些物体。我们又生活在一个充满信息的世界中,能否尽快地理解并运用这些信息将直接影响事业的成败,所以我们需要用一种最直接的形式来表示这些信息。最近几年计算机图形学的发展使得三维表现技术得以形成,这些三维表现技术使我们能够再现三维世界中的物体,能够用三维形体来表示复杂的信息,这种技术就是可视化

系统 2019-08-29 23:17:36 2058