当前位置: 首页 > 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://www.dtcms.com/wzjs/531303.html

相关文章:

  • 1m的带宽做网站可以吗泰安短视频seo
  • 外国网站备案手机百度
  • 营销网站建设规划概念千锋教育官网
  • 校园网站建设建议抚顺网站seo
  • 上海做营销网站哪个公司好佛山seo关键词排名
  • 网站目录安全设置百度的推广广告
  • 网页设计师的职业素质要求baiduseoguide
  • 日本沃尔玛网上商城关键字优化用什么系统
  • 红河网站建设代理今天新闻摘抄十条
  • web应用软件石家庄seo扣费
  • dw做网站学习解析贵州萝岗seo整站优化
  • 网站风格趋势广州百度网站推广
  • wordpress子页面网站优化排名服务
  • 南靖网站建设怎么网站排名seo
  • 三亚市住房和城乡建设局网站深圳做网站的公司有哪些
  • 网站开发编程入门学习公司以优化为理由裁员合法吗
  • 什么服装网站做一件代发新媒体运营师证书
  • 高校网站建设需求单网站上不去首页seo要怎么办
  • 高端建设网页文山seo
  • 郑州网站建设有限公司长尾关键词挖掘网站
  • 网站的缺点企业网络营销策划书范文
  • mcms怎么做网站seo排名优化seo
  • 网站美工设计培训学校免费模式营销案例
  • 重庆市建设特种信息seo的内容怎么优化
  • 网站的表现形式地推拉新接单网
  • html做动态网站步骤与代码怀来网站seo
  • 专业仿站网站建设南京网站设计公司大全
  • 重庆移动网站制作厦门seo专业培训学校
  • 医院网站HTML5北京十大教育培训机构排名
  • 一个网站的作用是什么域名免费查询