当前位置: 首页 > 知识库问答 >
问题:

用python构建包含模块和函数的调用图?[关闭]

谭文林
2023-03-14

共有1个答案

漆雕原
2023-03-14

我找到的最好的工具叫做Pyan,最初由Edmund Horner编写,他对其进行了改进,然后由Juha Jeronen提供了彩色化和其他特性。该版本具有有用的命令行选项:

Usage: pyan.py FILENAME... [--dot|--tgf]

Analyse one or more Python source files and generate an approximate call graph
of the modules, classes and functions within them.

Options:
  -h, --help           show this help message and exit
  --dot                output in GraphViz dot format
  --tgf                output in Trivial Graph Format
  -v, --verbose        verbose output
  -d, --defines        add edges for 'defines' relationships [default]
  -n, --no-defines     do not add edges for 'defines' relationships
  -u, --uses           add edges for 'uses' relationships [default]
  -N, --no-uses        do not add edges for 'uses' relationships
  -c, --colored        color nodes according to namespace [dot only]
  -g, --grouped        group nodes (create subgraphs) according to namespace
                       [dot only]
  -e, --nested-groups  create nested groups (subgraphs) for nested namespaces
                       (implies -g) [dot only]

下面是运行pyan.py--dot-c-e pyan.py fdp-tpng:

Edmund Horner的原始代码现在最好在他的github存储库中找到,有人还制作了一个包含这两个版本的存储库,您可以从那里下载Juha Jeronen的版本。我已经为pyan制作了一个干净的版本,将它们的贡献结合到我自己的存储库中,因为这两个存储库都有很多其他的软件。

 类似资料:
  • 问题内容: 在Python程序中,给定带有函数名称的字符串的最佳方法是什么。例如,假设我有一个模块,我有一个内容为的字符串。最好的通话方式是什么? 我需要获取函数的返回值,这就是为什么我不只是使用。我想出了如何通过使用eval定义一个返回该函数调用结果的函数来执行此操作的方法,但是我希望有一种更优雅的方法来执行此操作。 问题答案: 假设模块与方法: 你可以将第2行和第3行缩短为: 如果这对你的用例

  • 本文向大家介绍Python函数和模块的使用总结,包括了Python函数和模块的使用总结的使用技巧和注意事项,需要的朋友参考一下 函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解。 $$x_1 + x_2 + x_3 + x_4 = 8$$ 事实上,上面的问题等同于将8个苹果分成四组每组至少一个苹果有多少种方案。想到这一点问题的答案就呼之欲出了。 $

  • 我试图从另一个模块调用属于某个模块的函数(用于代码分解、组织等)。 在这一点上,一切都好了。 、、bin/one.rs工作中添加的。 > 编辑:我已经在Linux 5.3.0-45上安装了:。 编辑2:每当使用关键字时,我都会从中得到一个神秘的错误: 我在任何地方都找不到任何故障排除方法。 > 编辑3:在中添加文件,声明模块结构,并编写在中工作,但是: 2)我必须在两个不同的地方复制完全相同的信息

  • 我查看了其他项目,如babel或react-router,其中模块被拆分为几个包,使用lerna和yarn包。所以我尝试用不同的包来构建lerna库: 我希望中的文件仅在需要时并且仅在安装了node-module时才能从中调用中的方法。但我一直没有找到解决办法。使用/和/是否可以实现这一点?还是我采取了错误的方法? 更新10月27日 因此,经过几次测试,我能够使用带有普通HTML/JS(https

  • 我正在努力使用处理文件列表的XSL。对于大多数文件,该函数工作正常,但当文件名包含%符号时,该函数会崩溃。 这是我的XSLT: 以及我的XML和文件列表: 在Saxon中处理时,它抱怨找不到文件“the 7olution.xml” XLST将其指定为输出: 由于escape uri attributes=“no”,uri在转换后的XML中正确显示。我还没有找到一个在document()上工作的等效

  • 本文向大家介绍python使用multiprocessing模块实现带回调函数的异步调用方法,包括了python使用multiprocessing模块实现带回调函数的异步调用方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python使用multiprocessing模块实现带回调函数的异步调用方法。分享给大家供大家参考。具体分析如下: multipressing模块是python 2