Python

Python 之父的解析器系列之三:生成一个 PEG 解析器

原题|GeneratingaPEGParser作者|GuidovanRossum(Python之父)译者|豌豆花下猫(“Python猫”公众号作者)声明|本翻译是出于交流学习的目的,基于CCBY-NC-SA4.0授权协议。为便于阅读,内容略有改动。首发地址:https://mp.weixin.qq.com/s/oj...我已经在本系列第二篇文章中简述了解析器的基础结构,并展示了一个简单的手写解析器,根据承诺,我们将转向从语法中生成解析器。我还将展示如何使用

系统 2019-09-27 17:47:14 2385

Python

Python网络爬虫与信息提取——bs4

BeautifulSoup库解析器解析器使用方法条件bs4的HTML解析器BeautifulSoup(mk,'html.parser')安装bs4库lxml的HTML解析器BeautifulSoup(mk,'xml')pipinstalllxmllxml的XML解析器BeautifulSoup(mk,'xml')pipinstalllxmlhtml5lib的解析器BeautifulSoup(mk,'htm5lib')pipinstallhtm151ibBe

系统 2019-09-27 17:46:54 2385

Python

Python实现partial改变方法默认参数

在Python的标准库中,functools库中有很多对方法有操作的封装功能,partialObjects就是其中之一,他可以实现对方法参数默认值的修改。本文就以实例代码说明这一功能。下面就看下简单的应用测试实例。具体代码如下:#!/usr/bin/envpython#-*-coding:utf-8-*-#python2.7x#partial.py#authror:orangleliu'''functools中Partial可以用来改变一个方法默认参数1改

系统 2019-09-27 17:46:44 2385

Python

基于Python2、Python3中reload()的不同用法介绍

reload()简介作用:用于重新载入之前载入的模块语法格式:reload(module)参数:module为模块对象,必须已经被加载返回值:返回模块对象注意事项:多次重复使用import语句时,不会重新加载被指定的模块,只是把对该模块的内存地址给引用到本地变量环境。reload()会重新加载已加载的模块,重新编译模块,重新执行模块级代码,但是__init__函数不再重复执行,原来已经使用的实例还是会使用旧的模块,而新生产的实例会使用新的模块;reload

系统 2019-09-27 17:45:41 2385

Python

关于python字符串方法分类详解

python字符串方法分类,字符串是经常可以看到的一个数据储存类型,我们要进行字符的数理,就需要用各种的方法,这里有许多方法,我给大家介绍比较常见的重要的方法,比如填充、删减、变形、分切、替代和查找。打开sublimetext3编辑器,新建一个PY文件。test="hey"test_new=test.center(10,"$")print(test_new)填充类的有center()这个方法,可以指定字符,然后往两边填充,第一个参数是总的字符串长度。tes

系统 2019-09-27 17:37:37 2385

Python

selenium webdriver+windows+python+chrome遇见

win7系统,在python中调用ChromeDriver一直报错“selenium.common.exceptions.WebDriverException:Message:'ChromeDriverexecutableneedstobeavailableinthepath.”将ChromeDriver的路径添加到系统变量path也不行,后来将ChromeDriver拷贝到/python27/scripts下,问题解决。即,需要拷贝到当前python脚本

系统 2019-08-12 09:27:29 2385

Python

Docker实践之python应用容器化

一、前言容器使用沙箱机制,互相隔离,优势在于让各个部署在容器的里的应用互不影响,独立运行,提供更高的安全性。本文主要介绍python应用(django)跑在docker容器里,编写dockerfile实现镜像构建自动化以及docker神器compose。二、编写Dockerfile文件官网下载的python镜像比较精简,web应用相关依赖还是需要自己安装的。编写Dockerfile,可以让你构建镜像的时候自动化。实例如下:FROMpython:3.6.4R

系统 2019-09-27 17:56:49 2384

Python

python实现下载文件的三种方法

Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块。当然你也可以利用ftplib从ftp站点下载文件。此外Python还提供了另外一种方法requests。下面来看看三种方法是如何来下载zip文件的:方法一:importurllibimporturllib2importrequestsprint"downloadingwithurllib"url='//www.jb51.net//test/dem

系统 2019-09-27 17:56:42 2384

Python

python网络编程之读取网站根目录实例

本文实例讲述了python网络编程之读取网站根目录的方法,分享给大家供大家参考。具体实现方法如下:importsocket,sysport=70host="quux.org"filename="//"s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.connect((host,port))s.sendall(filename+"\r\n")while(1):buf=s.recv(2048)ifnotbu

系统 2019-09-27 17:55:54 2384

Python

Python之父发文吐槽现有解析器,考虑将它替换掉

花下猫语:GuidovanRossum是Python的创造者,虽然他现在放弃了“终身仁慈独裁者”的职位,但却成为了指导委员会的五位成员之一,其一举一动依然备受瞩目。近日,他开通了Medium账号,并发表了第一篇文章,透露出要替换Python的核心部件(解析器)的想法。这篇文章分析了当前的pgen解析器的诸多缺陷,并介绍了PEG解析器的优点,令人振奋。这项改造工作仍在进行中,Guido说他还会写更多相关的文章,我们就拭目以待吧。本文原创并首发于公众号【Pyt

系统 2019-09-27 17:55:51 2384

Python

以股票RSI指标为例,学习Python发送邮件功能(含RSI指标确定卖点策略)

本人之前写过若干“给程序员加财商”的系列文,目的是通过股票案例讲述Python知识点,让大家在学习Python的同时还能掌握相关的股票知识,所谓一举两得。在之前的系列文里,大家能看到K线,均线,成交量的案例,在本文里,大家能看到通过RSI案例讲述Python邮件编程的知识点,在后继系列文里,大家还能看到MACD,BIAS,KDJ等指标相关案例。1RSI指标的原理和算法描述相对强弱指标(RSI)是通过比较某个时段内单股价格的涨跌幅度来判断多空双方的强弱程度,

系统 2019-09-27 17:51:08 2384

Python

Python 3.7 安装教程

首先进入python官网下载:https://www.python.org/downloads/release/python-373/这里目前最新版本为3.73,点击下载。打开程序。按如下步骤操作:验证是否安装成功,打开cmd,输入python:写一个helloworld程序:至此,python的环境部署完毕。

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

Python

python使用dos命令将多个文件拼接成一个

情景:我用python爬取了很多.ts的文件,他们是一个个只有几秒的短视频,现在想把它们合并成一个电影:合并的命令copy/b*.tsnew_name.mp4/b是以二进制的形式合并:现在我要执行的命令为:copy/bD:\pythonFetch\movie\20190905\*.tsD:\pythonFetch\movie\20190905\new.mp4及将D:\pythonFetch\movie\20190905\文件夹下所有的.ts后缀的文件以二进

系统 2019-09-27 17:50:37 2384

Python

一行 Python 代码能实现什么丧心病狂的功能?

手头有109张头部CT的断层扫描图片,我打算用这些图片尝试头部的三维重建。基础工作之一,就是要把这些图片数据读出来,组织成一个三维的数据结构(实际上是四维的,因为每个像素有RGBA四个通道)。这个数据结构,自然是numpy的ndarray对象,读取图像文件我习惯使用PIL。因此,需要导入两个模块:importnumpyasnpfromPILimportImage接下来,我用一行代码就把109张图片读到了一个109x256x256x4的numpy数组中,耗时

系统 2019-09-27 17:49:06 2384

Python

python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image

在处理图像的时候经常是读取图片以后把图片转换为灰度图。作为一个刚入坑的小白,我在这篇博客记录了四种处理的方法。首先导入包:importnumpyasnpimportcv2importtensorflowastffromPILimportImage方法一:在使用OpenCV读取图片的同时将图片转换为灰度图:img=cv2.imread(imgfile,cv2.IMREAD_GRAYSCALE)print("cv2.imread(imgfile,cv2.IMR

系统 2019-09-27 17:48:56 2384