【发布时间】:2019-07-21 21:53:54
【问题描述】:
我有第一个无法修改或更改的功能!它显示变量的值(main_index 字段不能是列表、元组、字典等。它很简单,只是一个变量,必须保持原样)
该函数触发第二个函数,该函数可以返回多个值,因此我们的想法是以某种方式一一显示这些多个值,但不将它们放入列表或字典中。等等。可以以任何方式更改第二个功能。
代码如下(请注意第一个函数不能以任何方式修改,我这里只是简化一下)。
def not_changeable():
value_to_check='7.1'
main_index=generate_index(value_to_check)
print (main_index)
def generate_index(index):
dictionary={'7.1.1':{'value':'1'},'7.1.2':{'value':'2'},'7.100.3':{'value':'3'}}
filtered_dict={}
concatanatedIndex=index+'.'
for k in dictionary.keys():
if concatanatedIndex in k:
filtered_dict[k]=dictionary[k]
print (filtered_dict)
for indx in filtered_dict:
return (filtered_dict.get(indx).get('value'))
not_changeable()
作为输出,我得到一个值(因为返回函数结束了脚本)
{'7.1.1': {'value': '1'}, '7.1.2': {'value': '2'}}
1
但我想获得价值
1
2
对第一个函数没有任何修改。
我知道,如果我返回列表,我将能够显示所有值,但是是否可以在不修改第一个函数的情况下显示 1 和 2?
【问题讨论】:
-
not_changeable不会“给”你任何东西;它打印一个字符串。它对generate_index进行one 调用,因此您将获得one 值,该值将由print调用其__str__方法。
标签: python python-3.x return