python 如何将变量名转化为同名字符串

这是很无聊的一个想法,,

例如说,a=123

打印出来的时候,效果是这样::“a:3”如何不手动把a这个字串符输入进去呢?

见知乎:https://www.zhihu.com/question/42768955

还有stackoverflow:https://stackoverflow.com/questions/592746/how-can-you-print-a-variable-name-in-python

过程如下:

import inspect, re

def varname(p):
  for line in inspect.getframeinfo(inspect.currentframe().f_back)[3]:
    m = re.search(r'\bvarname\s*\(\s*([A-Za-z_][A-Za-z0-9_]*)\s*\)', line)
    if m:
      return m.group(1)

if __name__ == '__main__':
  spam = 42
  print (varname(spam))


结果就是把spam  这4个字母打印出来了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值