Python 打印错误:+;的操作数类型不受支持:';非类型';和';str';
我有两个字符串串联的代码,但它显示了一个错误 代码如下:Python 打印错误:+;的操作数类型不受支持:';非类型';和';str';,python,python-3.4,Python,Python 3.4,我有两个字符串串联的代码,但它显示了一个错误 代码如下: Name = "Praveen kumar" print (Name)+"Good boy" 错误消息:不支持+:'NoneType'和'str'的操作数类型。 如何修复此问题?如果要打印名称,然后将字符串Good boy添加到其中,则需要将添加内容包含在函数调用中 print(Name)将返回None(这是一个不定义返回值的函数),这就是为什么会出现不支持的操作数…错误 下面的代码将实现您想要的 Name = "Praveen kum
Name = "Praveen kumar"
print (Name)+"Good boy"
错误消息:不支持+:'NoneType'和'str'的操作数类型。
如何修复此问题?如果要打印
名称
,然后将字符串Good boy
添加到其中,则需要将添加内容包含在函数调用中
print(Name)
将返回None
(这是一个不定义返回值的函数),这就是为什么会出现不支持的操作数…
错误
下面的代码将实现您想要的
Name = "Praveen kumar"
print(Name + "Good boy")
但是请注意,
名称
和好孩子
之间没有空格。如果需要空格,则可以使用print(Name,“Good boy”)
,因为默认分隔符是sep='
,这意味着将在参数之间添加空格。print
是一个函数,不返回任何值
所以当你写作的时候
print(Name) + "Good boy"
实际上,您正在将函数调用的返回值(即None)添加到字符串中
你想要的可能是:
print(Name, "Good boy")
可能他们想要空白though@wim(名字,“好孩子”)给了我一个确定长度的结果。如果我想在这两者之间提供一些额外的空间,我该怎么办?@PraveenKumar在这种情况下,您可以传递关键字参数
print(Name,“Good boy”,sep=”)
。在这种情况下,我手动键入了3个空格,但您也可以执行sep=''*3
print({}Good boy'.format(Name))
@BurhanKhalid您能解释一下吗?请查看文档。