搜索到与相关的文章
Python

Python 之父的解析器系列之五:左递归 PEG 语法

原题|Left-recursivePEGgrammars作者|GuidovanRossum(Python之父)译者|豌豆花下猫(“Python猫”公众号作者)声明|本翻译是出于交流学习的目的,基于CCBY-NC-SA4.0授权协议。为便于阅读,内容略有改动。我曾几次提及左递归是一块绊脚石,是时候去解决它了。基本的问题在于:使用递归下降解析器时,左递归会因堆栈溢出而导致程序终止。【这是我的PEG系列的第5部分。其它文章参见这个目录】假设有如下的语法规则:ex

系统 2019-09-27 17:49:40 2030

Python

Python 函数用法简单示例【定义、参数、返回值、函数嵌套】

本文实例讲述了Python函数用法。分享给大家供大家参考,具体如下:demo.py(函数定义):#say_hello()#不能在定义函数之前调用函数#Python解释器知道下方定义了一个函数defsay_hello():"""函数的说明文档"""print("hello1")print("hello2")print("hello3")print("调用函数之前")#只有在程序中,主动调用函数,才会让函数执行say_hello()print("调用函数之后"

系统 2019-09-27 17:49:23 2030

Python

使用70行Python代码实现一个递归下降解析器的教程

第一步:标记化处理表达式的第一步就是将其转化为包含一个个独立符号的列表。这一步很简单,且不是本文的重点,因此在此处我省略了很多。首先,我定义了一些标记(数字不在此中,它们是默认的标记)和一个标记类型:token_map={'+':'ADD','-':'ADD','*':'MUL','/':'MUL','(':'LPAR',')':'RPAR'}Token=namedtuple('Token',['name','value'])下面就是我用来标记`expr`

系统 2019-09-27 17:49:09 2030

Python

【Python】常用语法

1.遍历一个文件夹apks='C:\\xxx'filenames=os.listdir(apks)forfilenameinfilesnames:#此处遍历出来的非完整路径,只是文件名字do_something(apks+"\\"+filename)#绝对路径需要拼接处理2.判断一个文件或文件夹是否存在importosos.path.exists(test_file.txt)3.string转dict,dict转string#string转dict,使用e

系统 2019-09-27 17:48:45 2030

Python

python 使用装饰器并记录log的示例代码

1.首先定义一个log文件#-*-coding:utf-8-*-importosimporttimeimportloggingimportsyslog_dir1=os.path.join(os.path.dirname(os.path.dirname(__file__)),"logs")today=time.strftime('%Y%m%d',time.localtime(time.time()))full_path=os.path.join(log_di

系统 2019-09-27 17:47:58 2030

Python

用Python和Pandas以及爬虫技术统计历史天气

背景最近在计划明年从北京rebase到深圳去,所以最近在看深圳的各个方面。去年在深圳呆过一段时间,印象最深的是,深圳总是突然就下雨,还下好大的雨。对于我这种从小在南方长大但是后面又在北京呆了2年多的人来说,熟悉而又无奈。今天早上本来想随便浏览浏览一个天气网站,看看深圳的历史天气如何的,但是,一不小心发现,这家网站竟然直接能用API来抓数据,这~~~还不抓一波,省的自己一个月一个月地看。先上最后的效果图:所有的code都在我的GitHub上:boydfd下面

系统 2019-09-27 17:47:57 2030

Python

利用Python实现命令行版的火车票查看器

接口设计一个应用写出来最终是要给人使用的,哪怕只是给你自己使用。所以,首先应该想想你希望怎么使用它?让我们先给这个小应用起个名字吧,既然及查询票务信息,那就叫它tickets好了。我们希望用户只要输入出发站,到达站以及日期就让就能获得想要的信息,所以tickets应该这样被使用:$ticketsfromtodate另外,火车有各种类型,高铁、动车、特快、快速和直达,我们希望可以提供选项只查询特定的一种或几种的火车,所以,我们应该有下面这些选项:-g高铁-d

系统 2019-09-27 17:46:17 2030

Python

python3编写C/S网络程序实例教程

本文以实例形式讲述了python3编写C/S网络程序的实现方法。具体方法如下:本文所述实例是根据wingIDE的提示编写的一个C/S小程序,具体代码如下:client端myclient.py代码如下:#!/bin/envpython#-*-coding:gb18030-*-#importsocketimporttimei=1whilei<10:address=("127.0.0.1",3138)s=socket.socket(socket.AF_INET,

系统 2019-09-27 17:46:04 2030

Python

让Python代码更快运行的5种方法

不论什么语言,我们都需要注意性能优化问题,提高执行效率。选择了脚本语言就要忍受其速度,这句话在某种程度上说明了Python作为脚本语言的不足之处,那就是执行效率和性能不够亮。尽管Python从未如C和Java一般快速,但是不少Python项目都处于开发语言领先位置。Python很简单易用,但大多数人使用Python都知道在处理密集型cpu工作时,它的数量级依然低于C、Java和JavaScript。但不少第三方不愿赘述Python的优点,而是决定自内而外提

系统 2019-09-27 17:45:40 2030

Python

python+mysql实现简单的web程序

这次要为我的python程序加上数据库,主要是实现从mysql中查询出数据并在页面上显示出来。首先是mysql的配置文件config.pyhost="127.0.0.1"user="root"password=""charset="utf8"database="service"port=3306然后是从数据库中读取数据的aService.pyimportMySQLdbimportsysimportconfigclassAService(object):de

系统 2019-09-27 17:45:28 2030