CPython 使用什么解析器生成器?

2024-03-05

我正在读书这一页 http://docs.python.org/py3k/reference/grammar.html在文档中,并注意到它说

这是完整的 Python 语法,由解析器生成器读取 并用于解析Python源文件

但是,我很难找出 CPython 使用的解析器生成器。那么 CPython 使用什么解析器生成器呢?是否有其他解析器生成器可以在不进行任何修改的情况下获取该页面上的语法?


Python 是开源的,因此您可以检查源代码...

在Python源目录中有一个“Parser”目录,其中包含“Python.asdl”和注释



-- ASDL's four builtin types are identifier, int, string, object
  

同一目录中还有一个“asdl.py”文件......



"""An implementation of the Zephyr Abstract Syntax Definition Language.

See http://asdl.sourceforge.net/ http://asdl.sourceforge.net/ and
http://www.cs.princeton.edu/research/techreps/TR-554-97 http://www.cs.princeton.edu/research/techreps/TR-554-97

Only supports top level module decl, not view.  I'm guessing that view
is intended to support the browser and I'm not interested in the
browser.

Changes for Python: Add support for module versions
"""
  

所以看起来它是一个自定义解析器生成器。 LALR(1) 解析器生成器并不难编写。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CPython 使用什么解析器生成器? 的相关文章

  • 如何在刻度标签和轴之间添加空间

    我已成功增加刻度标签的字体 但现在它们距离轴太近了 我想在刻度标签和轴之间添加一点呼吸空间 如果您不想全局更改间距 通过编辑 rcParams 并且想要更简洁的方法 请尝试以下操作 ax tick params axis both whic
  • Python、Tkinter、更改标签颜色

    有没有一种简单的方法来更改按钮中文本的颜色 I use button text input text here 更改按下后按钮文本的内容 是否存在类似的颜色变化 button color red Use the foreground设置按钮
  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • 如何使用固定的 pandas 数据框进行动态 matplotlib 绘图?

    我有一个名为的数据框benchmark returns and strategy returns 两者具有相同的时间跨度 我想找到一种方法以漂亮的动画风格绘制数据点 以便它显示逐渐加载的所有点 我知道有一个matplotlib animat
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • 如何使用 Scrapy 从网站获取所有纯文本?

    我希望在 HTML 呈现后 可以从网站上看到所有文本 我正在使用 Scrapy 框架使用 Python 工作 和xpath body text 我能够获取它 但是带有 HTML 标签 而且我只想要文本 有什么解决办法吗 最简单的选择是ext
  • 从 scikit-learn 导入 make_blobs [重复]

    这个问题在这里已经有答案了 我收到下一个警告 D Programming Python ML venv lib site packages sklearn utils deprecation py 77 DeprecationWarning
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • 在 Delphi 中使用 XML(将特定数据返回到变量)

    过去几天我一直在尝试使用 Delphi 2010 和 MSXML 我是一个极端的新手 需要一点指导 var MemoryStream TMemoryStream XMLPath String sName String XMLDoc vari
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像

随机推荐

  • 选择 LINQ 中 JOIN 后的所有列

    我有两张桌子 Table1 and Table2 我想执行左外连接 var myOutput from object1 in Table1 join object2 in Table2 on object1 Property1 equals
  • 批处理文件日/月/年语法?

    我找不到用于提取当前日 月 年的批处理文件语法的简单细分 我有以下语法来声明用作目录名称的变量 set folder date 10 4 date 7 2 date 4 2 任何人都可以阐明 或发布链接 波浪号 双百分比的含义吗 我似乎无法
  • 在 Android 4.x 上 touchmove 后 Touchend 未触发?

    我正在用 Javascript 编写一些代码 如下所示 var el document getElementById some div el ontouchstart function e el innerHTML touch start
  • 处理具有共同属性但不同对象类型的对象的方法

    我有大量自动生成的对象 尽管它们都是不同的 不相关的类 但所有对象都共享一些基本属性 名称 id 等 我无法控制这些对象的生成 因此不幸的是我无法采取实现接口的理想方法 我想创建一种方法 在其中传递这些对象中的任意一个 并使用这些公共属性执
  • 在 Intellij 中查找 lombok 生成的构造函数的用法

    我有一个带有 lombok 注释的类 Value or Data 并且我正在寻找一种简单的方法来查找自动生成的构造函数的用法 我现在能做的就是找到构造函数的一种用法 将光标放在那里并运行 查找用法 命令 然后我得到我想要的结果 不过我想直接
  • Zurb Foundation _global.scss js 元样式?

    我当时正在开发一个 Foundation 5 项目 结果发现该项目有一个过时的 global scss 组件 我试图得到范围滑块 http foundation zurb com docs components range slider h
  • 如何使用 pymongo 获取 mongo 实例中所有数据库的列表

    如何使用 pymongo 将 mongo 实例中所有数据库的列表获取到变量 例如使用 pymongo 将以下命令发送到 mongo 实例 db adminCommand listDatabases 1 Use 数据库名称 https api
  • 装饰器在 Nest 控制器中返回 404

    我正在使用 NestJS 开发后端 顺便说一句 这很棒 我有一个 标准获取实体情况的单个实例 类似于下面的示例 Controller user export class UserController constructor private
  • 为什么在全新项目(xcode 3.1.4)上不调用 dealloc?

    我开始学习 iPhone 编程 这显然是一个非常简单的问题 我在 xcode 3 1 4 中工作 现在 当我创建一个基于窗口的应用程序的新项目并修改 dealloc 在 AppDelegate m 文件中 以便它实际上在控制台上生成打印语句
  • 使用带有无限参数的函数进行柯里化

    假设我有以下 add 函数 它接受无限数量的参数 function add var total 0 var args Array prototype slice call arguments 0 for var i 0 i
  • 如何在Javascript中计算两个日期之间的年和月?

    有没有办法计算 Javascript 中两个不同日期之间的年数 也考虑闰年 和月份数 这是我知道的获得年份和月份的最佳方法 Assumes Date From df and Date To dt are valid etc var df n
  • 集成 Paytm 支付网关 Android

    我正在尝试将 paytm 的支付网关集成到我的 Android 应用程序中 我似乎在他们的网站上找不到任何适当的文件或程序 我已经通过谷歌检查了这方面的每一条线索 但没有帮助 尝试通过邮件和电话联系 Paytm 团队 没有回复 现在我被困在
  • PySpark + Cassandra:获取分区键的不同值

    我正在尝试获取 pyspark 中 cassandra 表的分区键的不同值 然而 pyspark似乎不理解我并完全迭代所有数据 很多 而不是查询索引 这是我使用的代码 对我来说看起来非常简单 from pyspark sql import
  • 将 geom_bar 添加到圆形图 ggplot2

    我有一个数据框 如下所示 dat lt structure list x 1 14 y c 1 26071476002898 1 97600316441492 2 41629009067185 3 48953782319898 10 8 4
  • 使用覆盖率,我如何测试这条线?

    我有一个简单的测试 class ModelTests TestCase def test method self instance Activity title Test self assertEqual instance get appr
  • gwt-ext 和 ext-gwt 之间的区别

    我是在服用疯狂的药物 还是这两件事几乎相同 到目前为止 我已经在这两个框架上花费了大量时间 我想说它们并不 几乎相同 虽然它们可能都使用相同的图形资源 但它们实现这一目标的方式非常不同 根据您的需求 开发风格 您可能会发现其中一种比另一种更
  • nvidia驱动、cuda驱动和cuda工具包之间有什么关系?

    在nvidia驱动包中 有libcuda so cuda驱动和nvidia驱动一样吗 cuda工具包和libcuda so之间有什么关系 来自cuda文档 http docs nvidia com cuda cuda c programmi
  • 如何从 javascript Intl.DateTimeFormat 获取时区缩写

    我正在尝试使用 ECMA 402 国际 API 来获取非本地时区的时区缩写 服务器时区是 UTC 我知道其他方法可以得到这个 我试图了解国际 API 的局限性并充分利用它 我可以获取完整的时区名称并自己进行映射 但由于缩写位于 IANA t
  • Java:转换为类型参数

    我有以下两个课程 public class GenericNumberOperation public GenericNumberOperation public
  • CPython 使用什么解析器生成器?

    我正在读书这一页 http docs python org py3k reference grammar html在文档中 并注意到它说 这是完整的 Python 语法 由解析器生成器读取 并用于解析Python源文件 但是 我很难找出 C