当前位置: 首页 > wzjs >正文

营销外贸网站建设阿里巴巴官网

营销外贸网站建设,阿里巴巴官网,网站上门备案,深圳专业高端网站建设当我们在创建python项目,经常需要遍历和分析代码文件,特别是当我们想要自动化地获取某些信息,比如所有的函数和类名。Python的ast(Abstract Syntax Trees,抽象语法树)模块为我们提供了一个强大的工具,可以方…

        当我们在创建python项目,经常需要遍历和分析代码文件,特别是当我们想要自动化地获取某些信息,比如所有的函数和类名。Python的ast(Abstract Syntax Trees,抽象语法树)模块为我们提供了一个强大的工具,可以方便地解析Python源代码,并从中提取出我们需要的信息。

原理

        当我们将py文件路径传递给ast模块的parse函数后,ast会将其解析为抽象语法树,然后使用ast.walk方法遍历这棵树,查找函数定义(FunctionDef节点)和类定义(ClassDef节点)。

        每当我们遇到一个这样的节点时,就可以提取出对应的函数名或类名。这种方法不仅准确,而且比使用正则表达式等字符串处理方法更加可靠,因为它直接利用了Python的语法解析能力。此外,ast模块还可以帮助我们避免因为代码格式变化或注释等无关因素而导致的解析错误,因为它只关注语法结构,而不关心具体的代码风格或注释内容。

代码

ast是python内置库,因此我们不需要使用pip命令安装。

import ast
def extract_function_and_class_names(pyfile_path):with open(pyfile_path, 'r', encoding='utf-8') as f:source=f.read()try:tree=ast.parse(source, filename=pyfile_path)except SyntaxError:print(f"语法错误!")return []names=[]for node in ast.walk(tree):if isinstance(node, ast.FunctionDef):names.append(node.name)elif isinstance(node, ast.ClassDef):names.append(node.name)return names

运行结果:

        使用上述代码对WechatAuto.py运行后:

说明 

        特别的,如果你的项目内函数或类比较多,又需要使用__all__=['函数名','类名']来限制用户在使用以下方式:

from module import *

 导入你的模块后能够使用的函数或方法,那么你便可以先使用ast模块先将你的py脚本内的函数或类全部导出,然后再使用list comprehension将不需要的部分删除掉即可。


文章转载自:

http://ZwVeK1md.sgrtf.cn
http://oMIC2uLd.sgrtf.cn
http://MgbQSO5E.sgrtf.cn
http://ZBh8ie7o.sgrtf.cn
http://p0IsHBvZ.sgrtf.cn
http://MDlMxqar.sgrtf.cn
http://odSg4lSX.sgrtf.cn
http://thbTAC08.sgrtf.cn
http://VDUJ4khl.sgrtf.cn
http://uRrszXpm.sgrtf.cn
http://6sJqn3cJ.sgrtf.cn
http://dikEncJ7.sgrtf.cn
http://MBtQuQ70.sgrtf.cn
http://UkA3W6Rd.sgrtf.cn
http://qukDatvM.sgrtf.cn
http://LDQ3DQbQ.sgrtf.cn
http://3wTFRdBk.sgrtf.cn
http://EwuTlu3Z.sgrtf.cn
http://QSL80CNs.sgrtf.cn
http://gSdLRKVI.sgrtf.cn
http://jtWYAvjB.sgrtf.cn
http://vwottCSF.sgrtf.cn
http://GcpOcKgu.sgrtf.cn
http://bRLXMz2g.sgrtf.cn
http://cGzO7NBk.sgrtf.cn
http://kze9EL8Q.sgrtf.cn
http://qUwxlORO.sgrtf.cn
http://F5W0IvNR.sgrtf.cn
http://z4lGQY4W.sgrtf.cn
http://DaGwMN74.sgrtf.cn
http://www.dtcms.com/wzjs/611800.html

相关文章:

  • 东莞住建局官方网站做ic销售的各种网站
  • 天津手机网站建站培训软文广告经典案例200字
  • 平谷网站建设公司专门做网站的
  • 公司找人做网站需要什么asp.net网站支持多国语言
  • 长春网站建设哪家公司好外包是做什么的
  • 深圳服务网站建设小说发表哪个网站赚钱
  • 用jsp做的简单网站代码西安旅游的网页设计
  • 网站需要多少钱腾讯企业邮箱入口网址
  • 茂名建站公司模板公司展厅设计公司哪家好
  • 中式建筑公司网站全国各地网站开发外包
  • 开发一款网站需要多少钱怎么找网站
  • 大学网站建设的目标赣州公司做网站
  • 大型电子商务网站建设wordpress主题个性
  • 房地产网站建设wordpress邮箱订阅
  • aspcms网站图片不显示删除的网站做404
  • 深圳做手机网站设计电子商务网站建设交印花税吗
  • 如何运营网站应用下载app
  • 炎陵做网站中山做网站专业的公司
  • 自己建个网站互联网创业项目排行榜
  • 加工厂网站建设沈阳网站建设设计报价
  • 自己做的网站如何赚钱吗女教师遭网课入侵直播录屏曝
  • 手机网站导航设计汕头建设企业网站
  • 做网站的前景珠海定制网站建设推广
  • 根据百度地图做网站上海网站建设知识 博客
  • 网站信息组织优化中小企业商务网站建设
  • 学网站建设需要几年温江网站开发
  • 河南锦路路桥建设有限公司网站写作平台有哪些
  • php做网站难吗株洲企业网站建设工作室
  • 团购做的好的网站有哪些要想让别人网站卖我的东西怎么做
  • 网站建设系展台设计搭建公司排名