gpt4 book ai didi

python - 在 Python 中解析方法变量名?

转载 作者:行者123 更新时间:2023-11-28 19:51:19 25 4
gpt4 key购买 nike

给定python函数:

def MyPythonMethod(value1, value2):
# defining some variables
a = 4
myValue = 15.65
listValues = [4, 67, 83, -23]

# doing some operation on the list
listValues[0] = listValues[1]

# looping through the values
for i in listValues:
print i

如何提取方法 MyPythonMethod 中所有变量的名称类型

理想情况下,我希望获得所有变量名称及其类型给定的方法名称。例如,方法 MyPythonMethod 的输出将如下所示:

varNames = ["a", "myValue", "listValues", "i"]

varTypes = ["int", "float", "list", "float"]

有什么想法吗?

最佳答案

1变量在 python 中没有类型。对象有类型,变量指向对象。

[2] 你可以使用 inspect module获取有关函数内部的信息。 阅读文档——他们会告诉您哪些内容可供检查。 例如,MyPythonMethod.func_code.co_varnames 将为您提供局部变量名称。 (请注意,按照定义,MyPythonMethod 实际上是一个函数,而不是方法。)

[3] 但是即使你得到了局部变量的名称,它们也没有绑定(bind)到任何对象 除非函数正在执行。值 4 绑定(bind)到函数中的局部变量“a”——在调用函数之前和之后,没有“a”,它也没有绑定(bind)到任何东西。

[4] 如果您在调试器中运行该函数,您可以随时停止执行并检查函数中创建的变量和对象。

[5] 如果函数引发异常,您可以捕获异常并获取异常发生时函数的某些状态。

关于python - 在 Python 中解析方法变量名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5982454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com