def say_hi_gender(full_name, gender): # name 和gender为形式参数
"""定义一个名为say_hi的有参数函数,其功能是打印一句问候语
根据性别gender值确定称谓,男性称为“先生”,女性称为“女士”,不确定性别时称为“先生/女士”
返回值为替换了姓名与称谓的欢迎字符串
例如:尊敬的李白先生,欢迎来到火星!"""
# ====================Begin===================================
if gender = '男':
sj = '先生'
elif gender = '女':
sj = '女士'
else:
sj = '先生/女士'
return f'尊敬的{full_name}{sj},欢迎来到火星!'
# =======================================================
if __name__ == '__main__':
# 直接使用函数名来调用函数
# ====================Begin===================================
full_name = input()
gender = input()
say_hi_gender(full_name, gender)
# =======================================================
参考GPT和自己的思路:
在函数调用处,需要使用print语句来将函数的返回值打印出来。你可以将代码修改为如下所示:
if __name__ == '__main__':
full_name = input('请输入您的姓名:')
gender = input('请输入您的性别(男/女):')
print(say_hi_gender(full_name, gender))
这样就可以正确调用函数并输出欢迎语了。
参考GPT和自己的思路:
在函数调用处,没有对函数的返回值进行任何的处理,因此程序并不会打印出欢迎语。应该把函数调用语句改为:
welcome = say_hi_gender(full_name, gender)
print(welcome)
这样就能够正确输出欢迎语了。另外,比较字符串应该使用双等号(==)而不是单等号(=)进行判断。修改后的代码如下:
def say_hi_gender(full_name, gender):
"""定义一个名为say_hi的有参数函数,其功能是打印一句问候语
根据性别gender值确定称谓,男性称为“先生”,女性称为“女士”,不确定性别时称为“先生/女士”
返回值为替换了姓名与称谓的欢迎字符串
例如:尊敬的李白先生,欢迎来到火星!"""
if gender == '男':
sj = '先生'
elif gender == '女':
sj = '女士'
else:
sj = '先生/女士'
return f'尊敬的{full_name}{sj},欢迎来到火星!'
if __name__ == '__main__':
full_name = input()
gender = input()
welcome = say_hi_gender(full_name, gender)
print(welcome)
say_hi_gender(full_name, gender)
这里只是返回,没有输出
print( say_hi_gender(full_name, gender))