将ast节点转换为python对象

2024-04-29

给定一个ast可以自行计算的节点,但字面意义不够ast.literal_eval例如列表理解

src = '[i**2 for i in range(10)]'
a = ast.parse(src)

Now a.body[0] is an ast.Expr and a.body[0].value an ast.ListComp。我想获得以下列表eval(src)会产生结果,但仅给出ast.Expr node.


也许您正在寻找compile() http://docs.python.org/library/functions.html#compile?调用的结果compile()AST 对象上是一个可以传递给的代码对象eval().


>>> src = '[i**2 for i in range(10)]'
>>> b = ast.parse(src, mode='eval')
>>> eval(compile(b, '', 'eval'))
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将ast节点转换为python对象 的相关文章

随机推荐

  • 从 Java 监听系统鼠标点击

    我的主要目的是计算特定应用程序上的鼠标点击次数 想象一下 我在 PC 上打开了 Microsoft Word 和 Web 浏览器 我的 Java 代码应该告诉我单击 Word 和 Web 浏览器的次数 我需要应用程序名称和点击次数 我怎样才
  • 将公式应用于一列中的所有单元格,而不是一次只应用于一个单元格?

    在 OpenOffice org Calc 中 我想将公式应用于引用同一行但不同列中的单元格的列 IE C1 48在单元格 D1 中 但我希望 D 列中的所有单元格都执行此操作 而无需手动将公式复制到每个单元格 或者换句话说 对于 C 中具
  • TypeError:PyQt4.QtCore.QVariantAnimation 表示 C++ 抽象类,无法实例化

    我有这个 PyQt5 片段 我正在尝试将其转换为 PyQt4 PyQt5 版本运行得很好 但是当我尝试转换为 PyQt4 时 出现此错误 我删除了QtWidgets但我仍然收到此错误 我也尝试过实例化self animation QtCor
  • WAR 文件在 Tomcat 服务器中抛出 OutOfMemoryError

    我有一个 Spring MVC WAR 文件 可以在我的本地计算机 程序和网站 中完美运行 一旦我将文件上传到服务器 aTomcat 7 并尝试访问它 catalina 日志文件表明java lang OutOfMemoryError 我尝
  • 将每分钟的 MP3 导出为单独的 WAV

    这绝对是一个奇怪的问题 但我正在寻找一种方法 将 60 分钟的 mp3 混合拆分为 60 个单独的 1 分钟长的 wav 文件 以便与 Echonest 等音频指纹识别 API 一起使用 这是否可以在单个 ffmpeg 命令中实现 或者我是
  • 对于 ASP.NET 中的大型网站,推荐的解决方案结构是什么

    我目前正在尝试重构一个根本没有任何分离的项目 asp net mvc 只是文件夹 s 该项目有一堆 EF Code First 类 People cs Exam cs Message cs等 该项目有几个存储库 都使用 EF Data 语境
  • 将 JQuery 日期选择器数据传递到 Rails 控制器

    我是 Rails 和 JQuery 的新手 所以我会尽力解释这一点 我正在尝试将 JQuery 日期选择器值传递给我的 Rails 控制器 该页面上有数据 我希望用户能够根据日期范围进行过滤 关于这个主题有许多不同的帖子 将变量从 jque
  • 理解 Haskell 中的矩阵转置函数

    这个矩阵转置函数有效 但我试图理解它的逐步执行 但我不明白 transpose a gt a transpose transpose x map head x transpose map tail x with transpose 1 2
  • 如何将 Google proto 时间戳转换为 Java LocalDate?

    我们需要将 Google Protobuf 时间戳转换为正常日期 在这种情况下 有没有办法将 Google Proto 缓冲区时间戳转换为 JavaLocalDate直接地 tl dr 作为 UTC 时刻 转换为java time Inst
  • 树莓派和 GitLab

    有什么办法可以运行 GitLab http gitlab org gitlab ce http gitlab org gitlab ce 和 GitLab CI http gitlab org gitlab ci http gitlab o
  • WinRT 中是否有 String.Normalize() 替代方案?

    WinRT 中是否有 string Normalize 的替代方案 我想简单地使用从输入字符串中删除重音符号这种方法 https stackoverflow com questions 4046937 removing diacritics
  • 如何将值从 recyclerview 项目传递到另一个活动

    当我们单击 recyclerview 项目时 我试图将 recyclerview 项目中的值传递给另一个活动 这里我使用的是OnItemTouchListener 我从 JSON 检索数据并将其解析为 ArrayList 我保存了5个参数
  • 如何设计导出端点的REST API?

    我正在设计 REST API 并遇到设计问题 我有alerts我希望用户能够export为少数文件格式之一 所以我们已经开始执行操作 命令了export 感觉像是 RPC 而不是 REST 此外 我不想采用默认的文件格式 相反 我想要求提供
  • webpack-cli 未知参数:--output

    我的 npm node js 版本 当我尝试运行npm dev命令 日志文件 0 info it worked if it ends with ok 1 verbose cli usr local bin node usr local bi
  • Laravel:从新的自定义目录加载自定义类

    我目前已在我的应用程序目录中为所有 库 添加了一个新文件夹 我不断收到找不到该类的错误 这就是我所做的 我已将其添加到composer json 文件中的自动加载值中 autoload classmap app commands app c
  • boost::bind、boost::function 和 boost::factory 的问题

    我尝试将 boost bind 与 boost factory 结合使用 但没有成功 我的 Zambas 类有 4 个参数 2 个字符串和 2 个整数 class Zambas public Zambas const std string
  • 如何在 PHP 中随机组合两个数组

    如何将两个数组组合成一个数组 我请求的方式是第三个组合数组应包含一个数组中的一个值和另一个数组中的下一个值 依此类推 或者 它可以是随机的 前任 arr1 1 2 3 4 5 arr2 10 20 30 40 50 和组合数组 arr3 1
  • 使用 numba 计算向量和矩阵中的行之间的余弦相似度

    找到了这个gist https gist github com FedericoV 0e7d6d8c8794a99a7a42使用 numba 快速计算余弦相似度 import numba numba jit target cpu nopyt
  • 重定向和引用者

    我的实际实现要复杂得多 需要身份验证和一堆其他东西 但以最简单的形式 这就是我遇到的问题 使用标头重定向不会将其自身显示为引用者 所以 假设我有三个页面 start php middle php 和 end php 启动 php a hre
  • 将ast节点转换为python对象

    给定一个ast可以自行计算的节点 但字面意义不够ast literal eval例如列表理解 src i 2 for i in range 10 a ast parse src Now a body 0 is an ast Expr and