from math import sin
def math_func(n, f):
return {'квадрат': n**2, 'куб': n**3, 'корень': n**0.5, 'модуль': abs(n), 'синус': sin(n)}[f]
print(math_func(int(input()), input()))
当一个人输入一个整数和一个单词时,该程序返回使用该数字完成的工作。
请解释一下,在这个程序中 [f] 字典返回一个值之后,为什么一个没有名字的字典返回一个值是怎么回事。
感谢你的回答!
如果你不把一个对象放在一个变量中,这并不意味着这个对象会低级,如果引用指向这个对象(它在程序中仍然需要),那么这个对象,在这种情况下是字典,
Python将不会lose 并且允许你在访问它的情况下使用它,因为变量只是对存储对象值的内存区域的引用,如果没有变量,那么这个内存区域仍然存在。创建任何对象时,都会自动为其分配一个数值
id(该对象在内存中的地址),Python随后将访问该数值。“垃圾收集器”负责删除没有引用的不必要的对象,我建议您在这里阅读更多相关信息。