返回中的多个打印语句

2024-05-16 11:32:02 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将下面的函数careers存储在变量中供以后使用

jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers():
    print("Heres a list of jobs\n")

    for j in jobs:
        print("This person is a " + j + ".")
    
    print("\nAre you interested in any of these as careers?")

post = careers()

当我尝试print(post())(我分配给函数的上述变量)时,输出为None。我知道我应该使用return来输出函数的结果,但是我很难在一个包含多个打印语句的函数中使用return,这些语句需要保持以下格式

Heres a list of jobs

This person is a Cook.
This person is a Vet.
This person is a Doctor.
This person is a Pilot.

Are you interested in any of these as careers?

Tags: of函数inisjobsthislistperson
2条回答

你需要理解python中“return”的概念,如果你想从函数中得到一个变量,你可以从该函数中得到它,你可以在调用该函数的时候/任何时候得到它 这是您的代码的固定版本

jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers():
    output_of_careers = ""
    output_of_careers += output_of_careers +"Heres a list of jobs\n\n"
    for j in jobs:
        output_of_careers = output_of_careers +"This person is a " + j + ".\n"
    
    output_of_careers = output_of_careers +"\nAre you interested in any of these as careers?"
    return output_of_careers
post = careers()
print(post)

假设您确实想要存储函数careers,您需要将函数careers(注意没有括号)分配给post,而不是调用careers()的结果

得到None的原因是,如果您没有从Python中的函数返回任何内容,您会得到None(尽管我很惊讶您没有得到TypeError,而是尝试调用None()

相关问题 更多 >