代码如下:
def tell_your_name(name):
print(f"你的名字是{name.title}")
a=input("你的名字是:")
tell_your_name(str(a))
运行程序,效果如下:
第一,他值运行了一遍,因为你input有个然后print打印了一个;第二,没有打印名字是因为你name后面加了title,直接应用name就行
【以下回答由 GPT 生成】
问题出在这一行代码上:
tell_your_name(str(a))
input
函数返回的是一个字符串,所以你不需要再次将其转换为字符串。调用str
函数的结果会导致传入tell_your_name
函数的参数变成一个包含引号的字符串,而不是你输入的名字。这就是为什么你没有得到期望的结果。
要解决这个问题,只需简单地将input
函数的返回值直接传递给tell_your_name
函数即可。
以下是修改后的代码:
def tell_your_name(name):
print(f"你的名字是{name.title()}")
a = input("你的名字是:")
tell_your_name(a)
现在,当你输入名字后,程序将会正常打印出"你的名字是Tom"。
【相关推荐】