首先,我在自学成才的Python中非常新。我选择了一本速成课程书,我正试图让代码类型起作用。我得到的错误是" TypeError:' str'对象不可调用"。
我试图添加' '在名称周围,将其称为str(name()),以及一些脱离墙的东西。如果有人可以解释错误实际意味着什么,以及我如何使用它?我真的很感激,
#I can't get this program to work for me
name = "Billy"
message = "Hello, " + name() + "!"
print(message)
答案 0 :(得分:1)
name =“Billy”
是一个字符串对象,而不是一个函数。 功能类似于以下
def sayHello(name):
print("Hello "+name+" !")
函数是where()有效。要调用上面的函数,我的代码将是
name = "Tom"
sayHello(name)
这给了我们以下输出
“你好汤姆!”
要打印“Hello Billy!”,您的代码应该是print("Hello " + name + " !")
。
你不能str(name())
。它仅在您定义一个名为name
的函数时才有效,该函数返回一个值,您希望将其转换为字符串。
这是因为name()
调用了一个名为name
的函数。它的返回值将是赋予str(value_returned_by_function_name)
转换为字符串对象的参数。
在您的情况下,name
是一个字符串对象。因此str(name())
无效。