所以我不确定如何描述或谷歌它。我想要的是使用变量来访问另一个变量。我猜测答案将使用各种字典。
personPaul = [1,2]
personJoe = [3,4]
def myFunc(name):
return person + name
print myFunc("Paul")
print myFunc("Joe")
我希望输出为
[1,2]
[3,4]
答案 0 :(得分:4)
我猜测答案将使用各种字典
完全正确: - )
people = {
"Paul": [1,2],
"Joe": [3,4]
}
def myFunc(name):
return people[name]
print myFunc("Paul")
print myFunc("Joe")
当然,您也可以删除myFunc
中间人并直接print people["Paul"]
。
答案 1 :(得分:2)
这就是你追求的目标吗?:
people = {
"Paul":[1,2],
"Joe":[3,4]
}
print people["Paul"] # Gives you [1,2]
print people["Joe"] # Gives you [3,4]
答案 2 :(得分:1)
您可以使用globals()
函数访问函数内的全局变量,然后使用generator expression函数中的next
循环其项目,然后检查您的名称是否在全局name(密钥)然后打印其对应的值:
>>> personPaul = [1,2]
>>> personJoe = [3,4]
>>> def myFunc(name):
... return next((v for k,v in globals().items() if name in k),None)
...
>>> myFunc('Paul')
[1, 2]
>>> myFunc('jack')
>>>