我曾多次写过这样的话:
print 'customer id: ', customerId
我想要一个函数,它可以打印变量名和值
>>myprint(customerId)
>>customerId: 12345
最佳答案
做你所需要的事情需要在符号表中进行O(N)查找,这是很糟糕的。
如果可以传递与变量名对应的字符串,则可以执行以下操作:
import sys
def myprint(name, mod=sys.modules[__name__]):
print('{}: {}'.format(name, getattr(mod, name)))
测试:
a=535
b='foo'
c=3.3
myprint('a')
myprint('b')
myprint('c')
将打印:
a: 535
b: foo
c: 3.3
通过传递第二个参数,也可以使用它从另一个模块打印变量,例如:
>>> import os
>>> myprint('pathsep', os)
pathsep: :
关于python - 我们如何在python中打印变量名称及其值,这在调试期间会很有用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31133627/