你如何阅读和快速编辑python代码

时间:2018-03-18 19:44:01

标签: python dynamic-typing

我通常使用C ++但最近不得不在Python中编写很多程序。来自C ++背景,我发现动态类型在我必须修改现有代码库时非常不方便。我知道我遗漏了一些非常基本的东西,因此转向stackoverflow社区来了解最佳实践。

想象一下,有一个包含许多方法的类,我需要编辑现有方法。现在,在C ++中,我可以显式地看到每个参数的数据类型,如果需要,可以查看相应类的.h文件,并且可以快速了解发生了什么。另一方面,在python中,我看到的只是一些变量名。我不确定它是一个列表或字典,还是一些带有getter和setter的自定义数据结构。为了解决这个问题,我需要查看这个函数的一些现有用法,或者使用断点运行代码,看看我得到了什么样的数据结构。我发现这两种方法都非常耗时。有没有更快的方法来解决这个问题?我应该如何快速确定特定变量的数据类型?

总体印象是代码在Python中更容易读/写,但由于缺少类型,我发现读取python代码并不是很快。我在这里缺少什么?

3 个答案:

答案 0 :(得分:1)

我也感受到了你的痛苦!我经常在Python和C ++之间切换,所以范式转换确实让我产生偏执狂。

但是,我已经重新调整了我的代码:

Type Annotations

它不会提高运行时性能,但在阅读数万行代码时可以提供舒适感。此外,您可以使用此程序运行python程序以进一步验证类型注释:

mypy

答案 1 :(得分:0)

以下是我要遵循的事项:

  1. 清楚地评论返回的内容以及docstring
  2. 中的输入内容
  3. 使用调试(或标志)变量,默认设置为False,并按如下方式保留if块。

    if debug:
        print(type(variable))
    
  4. 因此,通过这种方式,您可以确定看到变量​​的类型。

答案 2 :(得分:0)

在Python中,您可以使用

查看任何变量的数据类型
type(variable_name)

它将显示该变量的数据类型。如int,bool,str等