I';我有一个;无”;在用Python编写函数时 您好,我对Python非常陌生,我想尝试一下新教授的函数,并拼凑出以下内容:

I';我有一个;无”;在用Python编写函数时 您好,我对Python非常陌生,我想尝试一下新教授的函数,并拼凑出以下内容:,python,python-3.x,Python,Python 3.x,我希望它能打印出Name:Name:Name:Age:(当然有换行符)9次,但我得到的结果是 Name: Name: Name: Age: None None None 我当时想的是有9个Name:Name:Name:Age:,所以我试着在prt(“Name:”,“Age:”)中Name:和Age:一起Age:打印三次。前3个显然出现了,我想这意味着第一批三次打印成功了,但我不知道为什么之后我会得到3个零 最终我放弃了,只做了三行prt(“Name:”,“Age:”),而不是三行打印(prt(

我希望它能打印出
Name:Name:Name:Age:
(当然有换行符)9次,但我得到的结果是

Name:
Name:
Name:
Age:
None
None
None
我当时想的是有9个
Name:Name:Name:Age:
,所以我试着在
prt(“Name:”,“Age:”)
Name:
Age:
一起
Age:
打印三次
。前3个显然出现了,我想这意味着第一批
三次打印
成功了,但我不知道为什么之后我会得到3个零

最终我放弃了,只做了三行
prt(“Name:”,“Age:”)
,而不是三行
打印(prt(“Name:”,“Age:”)
,效果似乎很好。
谁能解释一下我做错了什么吗?

函数是Python中的一个可调用对象,它有一个返回值。如果函数没有显式要求返回某个内容,则默认情况下它不返回任何内容 我想这可能就是你想要做的;如果没有,请留下评论

def print_thrice(argumentOne, argumentTwo):

    return '\n'.join(f'I am {argumentOne}  and I am {argumentTwo} years old' for _ in range(3))

print(print_thrice("George","25")) # caling the function print_thrice



I am George  and I am 25 years old
I am George  and I am 25 years old
I am George  and I am 25 years old

prt的返回值为None,因为它不返回任何内容。这就是为什么你看不到任何打印。请看这里:您只需要调用
prt(“姓名:”,“年龄:”)
您到底想做什么?prt()返回None,这就是为什么在您的欲望输出后会得到3个None。其他人已经回答了您的问题。我只是想欢迎你来到SO。请不要因为负面分数而气馁。我想我的想法是在
Name:Name:Name:Age:
中有9个,所以我试着
Name:
三次打印已经打印了三次的
Name:
以及
Age:
prt(“Name:,“Age:)
中。前3个显然出现了,我想这意味着第一批
三次打印
成功了,但我不知道为什么之后我会得到3个零
def print_thrice(argumentOne, argumentTwo):

    return '\n'.join(f'I am {argumentOne}  and I am {argumentTwo} years old' for _ in range(3))

print(print_thrice("George","25")) # caling the function print_thrice



I am George  and I am 25 years old
I am George  and I am 25 years old
I am George  and I am 25 years old