繁体   English   中英

如何在 python 中的 function 中调用 function

[英]How to call a function within a function in python

如何避免在程序末尾有一个长长的 function 调用列表,如下所示? 下面只是一个示例,但是当我编写更大的程序时,它很容易成为超过 20 个 function 调用的“列表”。

def ask_age():
    age = input("age: ")
    return age

def calculate_age_minus_ten(age):
    age_minus_ten = int(age) - 10
    return age_minus_ten

def print_phrase(age,age_minus_ten):
    print("I am " + str(age) + " years old. 10 years ago I was " + str(age_minus_ten) + " 
    years old")

age = ask_age()
age_minus_ten = calculate_age_minus_ten(age)
print_phrase(age, age_minus_ten)

我想让它看起来像这样:

def ask_age():
    age = input("age: ")
    return age

def calculate_age_minus_ten():
    age_minus_ten = int(ask_age()) - 10
    return age_minus_ten

def print_phrase():
    print("I am " + ask_age() + " years old. 10 years ago I was " + str(calculate_age_minus_ten()) + " years old")

print_phrase()

它已经在学校根据示例 1 进行了几个星期的编码,但是当我必须执行更大的程序时,很难在底部收集所有 function 调用。 所以我要做的就是在代码中不断调用函数,这样我只需要在底部调用一个function。 请帮帮我:)

我的建议:不要使用多个函数,在一个函数中完成你需要的一切,如果你仍然想要这些值,你可以返回它们:

def foo():
    age = int(input("age: "))
    age_minus_ten = age - 10
    print(f"I am {age} years old. 10 years ago I was {age_minus_ten}"
    return age, age_minus_ten

age, age_minus_ten = foo() # If you want the return values

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM