是否可以在 Python 中获取传递参数的名称?
具体来说,我希望能够做到这一点:
def a(name):
print "the actual passed parameter is %s" %(???)
它解决了什么?
因此,如果我需要在袋子和篮子中分发硬币,比如 bag_list 和 basket_list,我不需要发送一个明确的标识符,比如“袋子”或“篮子”
这就是我目前的工作方式。我目前正在为此目的使用(全局)字典-
ID = {'bag': bag_list, 'basket': basket_list}
def a(name, id):
dist_list = ID[id]
它还归结为将变量名称转换为字符串,因为所需的行为也可以建模为:
def a(name):
name = ???get variable name as string magically???
if name.startswith('bag'):
dist_list = ID['bag']
else:
dist_list = ID['basket']
重新建模的问题已在https://stackoverflow.com/a/9121991/1397945中得到全面回答,但我正在重新发布
- 以防万一有一些修改&
- 是否可以在其他脚本语言(如 Perl 或 Tcl)中执行此操作。
- 更重要的是,以防两种建模方式不同或可以采用任何不同的方式进行处理。
谢谢。