python - python 3中有没有一种方法可以使两个用户定义的函数只需要输入一次
问题描述
假设我有两个用户定义的函数monthly_salary()
,并且report()
在 Python 3 中
def monthly_salary():
monthly_salary = int(input('Enter Monthly Salary'))
return monthly_salary
def report():
yearly_salary = monthly_salary() * 12
message = '%s %4d %s %6d' % ('John gets paid monthly salary of', monthly_salary(), '& yearly salary of', yearly_salary)
print(message)
如果我运行上面的代码,它会询问用户每月用户两次。有没有办法让它只向用户询问一次月薪?
解决方案
由于您调用了monthly_salary() 两次,因此您的代码要求输入两次。更改您的代码以存储在变量中,并将其用于进一步计算。
def monthly_salary():
return int(input('Enter Monthly Salary: '))
def report():
m_salary = monthly_salary()
message = '%s %4d %s %6d' % ('John gets paid monthly salary of', m_salary, '& yearly salary of', m_salary * 12)
print(message)
report()
推荐阅读
- python - 比 iterrows 迭代 df 并设置另一个列值的更好方法
- javascript - react - 使用 for 循环创建 x 个组件实例
- javascript - 如何获得另一个属性等于 x 的属性值?
- laravel - 使用 SSH 将文件从远程服务器复制到本地服务器
- python - rabbitmq 是如何同步消息的?
- c# - C# .NET 后台服务
- jquery - 获取画布 ID“OnClick”
- javascript - JS - default() 不是函数
- android - 如何在主题中设置图像样式。安卓?
- java - 泛型的 Spring 嵌套自动装配抛出 NoUniqueBeanDefinitionException