Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认

系统 2019-09-27 17:52:35 1480

Python

Python 冒泡,选择,插入排序使用实例

最近学习了python基础,写一下3大排序练练手:复制代码代码如下:'''Createdon2013-8-23@author:codegeek'''//冒泡排序defbubble_sort(seq):foriinrange(len(seq)):forjinrange(i,len(seq)):ifseq[j]

系统 2019-09-27 17:52:28 1480

Python

用Python徒手撸一个股票回测框架

通过纯Python完成股票回测框架的搭建。什么是回测框架?无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。代码地址在最后。本项目并不是一个已完善的项目,还在不断的完善。回测框架回测框架应该至少包含两个部分,回测类,交易类.回

系统 2019-09-27 17:51:37 1480

Python

Python 实现elasticsearch group by

es实现聚合es通过agg实现聚合,详情可见es文档有时候查询es数据的时候可能需要实现多字段groupby的功能,例如:SELECTsum(item_count)fromAgroupbyfield1,field2,field3要实现多个维度的聚合,需要嵌套的agg查询语句:{"query":{},"aggs":{"field1":{"terms":{"field":"field1","size":2147483647#设置一个大的分桶数,防止一次统计不完

系统 2019-09-27 17:51:32 1480

Python

python高级特性 __切片 、迭代 、列表生成式 、生成器 、迭代器

原文链接:https://www.liaoxuefeng.com/wiki/1016959663602400/1017318207388128注:本篇博客是学习廖雪峰老师网站的摘抄,是为了方便以后的学习。如有侵权,请联系删除!联系邮箱:1103540209@qq.com文章目录1.切片2.迭代3.列表生成式4.生成器5.迭代器小结参考掌握了Python的数据类型、语句和函数,基本上就可以编写出很多有用的程序了。比如构造一个1,3,5,7,...,99的列表

系统 2019-09-27 17:51:28 1480

Python

python实现关键词提取的示例讲解

新人小菜鸟又来写博客啦!!!没人表示不开心~~(>_<)~~今天我来弄一个简单的关键词提取的代码文章内容关键词的提取分为三大步:(1)分词(2)去停用词(3)关键词提取分词方法有很多,我这里就选择常用的结巴jieba分词;去停用词,我用了一个停用词表。具体代码如下:importjiebaimportjieba.analyse#第一步:分词,这里使用结巴分词全模式text='''新闻,也叫消息,是指报纸、电台、电视台、互联网经常使用的记录社会、传播信息、反映

系统 2019-09-27 17:51:23 1480

Python

Python分割训练集和测试集的方法示例

数据集介绍使用数据集Wine,来自UCI。包括178条样本,13个特征。importpandasaspdimportnumpyasnpdf_wine=pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/wine/wine.data',header=None)df_wine.columns=['Classlabel','Alcohol','Malicacid','Ash

系统 2019-09-27 17:50:52 1480

Python

浅谈Python程序与C++程序的联合使用

作为Python程序员,应该能够正视Python的优点与缺点。众所周之,Python的运行速度是很慢的,特别是大数据量的运算时,Python会慢得让人难以忍受。对于这种情况,“专业”的解决方案是用上numpy或者opencl。不过有时候为了一点小功能用上这种重型的解决方案很不划算,或者有时候想要实现的操作在numpy里面没有,需要我们自己用C语言来编写。总之,我们使用Python与C++的混合编程能够加快程序热点的运算速度。首先要提醒大家注意的是,在考虑联

系统 2019-09-27 17:50:46 1480

Python

Python何时应该使用Lambda函数

Python中定义函数有两种方法,一种是用常规方式def定义,函数要指定名字,第二种是用lambda定义,不需要指定名字,称为Lambda函数。Lambda函数又称匿名函数,匿名函数就是没有名字的函数,函数没有名字也行?当然可以啦。有些函数如果只是临时一用,而且它的业务逻辑也很简单时,就没必要非给它取个名字不可。好比电影里面的群众演员,往往他们的戏份很少,最多是衬托主演,跑跑龙套,他们需要名字吗?不需要,因为他们仅仅只是临时出镜,下次可能就用不着了,所以犯

系统 2019-09-27 17:50:41 1480

Python

来迟了,用Python助你叠猫猫,抢618大红包!

目录:0引言1环境2需求分析3前置准备4逛店铺流程回顾5代码全景展示6总结0引言最近叠猫猫的活动可真是十分的火爆,每天小伙伴们为了合猫猫忙的可谓是如火如荼。为啥要叠猫猫呢?赚猫币得现金红包!!眼看为实,先来看看我朋友的购物订单。看到没,优惠力度如此之大!!!后知后觉的我,错过了第一波,可不想错过第二波啊!活动需要不断的升级自家的猫,其中一个途径是通过逛店铺来获取喵币。每天可逛40店铺,共可领到40*300喵币!!但是,你总不能一直盯着玩吧?想想都累,所以呢

系统 2019-09-27 17:50:26 1480

Python

解读python如何实现决策树算法

数据描述每条数据项储存在列表中,最后一列储存结果多条数据项形成数据集data=[[d1,d2,d3...dn,result],[d1,d2,d3...dn,result],..[d1,d2,d3...dn,result]]决策树数据结构classDecisionNode:'''决策树节点'''def__init__(self,col=-1,value=None,results=None,tb=None,fb=None):'''初始化决策树节点args:co

系统 2019-09-27 17:50:26 1480

Python

Python字符串处理函数简明总结

返回被去除指定字符的字符串默认去除空白字符删除首尾字符:str.strip([char])删除首字符:str.lstrip([char])删除尾字符str.strip([char])判断是否匹配首末字符匹配成功返回True,否则返回False匹配首字符:str.startswith(char[,start[,end]])匹配末字符:str.endswith(char[,start[,end]])查找字符,找到返回字符位置,否则返回-1从字符串开头查找str

系统 2019-09-27 17:50:02 1480

Python

深入浅析python3中的unicode和bytes问题

最近写了一些python3程序,四处能看到bytes类型,而它并不存在于python2中,这也是python3和python2显著区别之一。以前在写python2代码的时候,经常会遇到很多编码报错的异常,原因在于python2对unicode的支持不是特别理想。而在python3中,所有编写的代码都是unicode,python解析器在运行的时候,内部都转换(除非你显示定义为bytes类型)为unicode,减少了出错的可能性。在python3中,有两种字

系统 2019-09-27 17:49:59 1480

Python

Python的Django框架使用入门指引

前言传统Web开发方式常常需要编写繁琐乏味的重复性代码,不仅页面表现与逻辑实现的代码混杂在一起,而且代码编写效率不高。对于开发者来说,选择一个功能强大并且操作简洁的开发框架来辅助完成繁杂的编码工作,将会对开发效率的提升起到很大帮助。幸运的是,这样的开发框架并不少见,需要做的仅是从中选出恰恰为开发者量身打造的那款Web框架。自从基于MVC分层结构的Web设计理念普及以来,选择适合的开发框架无疑是项目成功的关键性因素。无论是Struts、Spring或是其他W

系统 2019-09-27 17:49:32 1480

Python

Python正则表达式re.findall一个有趣的现象

下面通过几个案例来分析一下,注意:本节的parsematch函数请参考《妙用re.sub分析正则表达式解析匹配过程》案例一:>>>re.findall(r".*.*(.*)",'第二回悟彻菩提真妙理断魔归本合元神')['断魔归本合元神']>>>parsematch(r".*.*(.*)",'第二回悟彻菩提真妙理断魔归本合元神')第1次匹配,匹配情况:匹配子串group(0):第二回悟彻菩提真妙理断魔归本合元神,位置为:(0,19)匹配子串group(1):

系统 2019-09-27 17:48:48 1480