panpanpan199146 发表于 2021-3-19 22:08:43

为什么要有两个加号且加空格,是定义为字符?

name = input("请输入您的姓名:")
print('你好,' + name + '!')

昨非 发表于 2021-3-19 22:15:40

不是的,对于字符串的+是字符串的拼接操作
('你好,' + name + '!')因为name是字符串型变量,所以和你好!拼到一起作为一个字符串来打印

panpanpan199146 发表于 2021-3-19 22:21:39

昨非 发表于 2021-3-19 22:15
不是的,对于字符串的+是字符串的拼接操作
('你好,' + name + '!')因为name是字符串型变量,所以和你好! ...

你好,非常感谢,为什么直接print(name)能够成功,而print('你好,name')就会出现错误

ynqj 发表于 2021-3-19 22:22:14

空格在 + 两边是书写的习惯其实不加空格也可以。

Daniel_Zhang 发表于 2021-3-19 22:31:19

panpanpan199146 发表于 2021-3-19 22:21
你好,非常感谢,为什么直接print(name)能够成功,而print('你好,name')就会出现错误

print('你好,name') 肯定不会发生错误,发生的是打印结果与期望的不同,这不属于错误

之所以出现与期望的不同的结果,是因为你将变量放进了字符串的括号里面,此时 python 就会认为:

这里的 name 不是变量,而是一个字符串

print('你好',name) 就可以了

print('你好',name) 是字符串的另外一种拼接方式,类似于 +

昨非 发表于 2021-3-19 22:41:19

楼上正解
任何变量名,放到引号里都不在是变量
而是会被识别为值为变量名的字符串,所以你print后面引号里
你好,name,打印出来的就是你好,name

panpanpan199146 发表于 2021-3-19 22:59:51

Daniel_Zhang 发表于 2021-3-19 22:31
print('你好,name') 肯定不会发生错误,发生的是打印结果与期望的不同,这不属于错误

之所以出现与期 ...

print('你好',name)不行,我刚刚试了,显示invalid syntax

ba21 发表于 2021-3-19 23:27:38

panpanpan199146 发表于 2021-3-19 22:59
print('你好',name)不行,我刚刚试了,显示invalid syntax



先了解print的使用方法。论坛上有。
针对pirnt的使用,遇个问题来问下,倒不如先把print函数的使用方法先了解一遍。

Daniel_Zhang 发表于 2021-3-20 00:01:06

本帖最后由 Daniel_Zhang 于 2021-3-20 00:02 编辑

panpanpan199146 发表于 2021-3-19 22:59
print('你好',name)不行,我刚刚试了,显示invalid syntax

不好意思哈

我那个回答是复制你的问题里面的表达式的,没有检查

你里面的那个逗号,用的是中文的逗号,你得用英文的逗号

python里面的所有符号,全部使用英文的

字符串里面可以出现中文字符,但是为了保持良好习惯,尽量全部使用英文符号

抱歉哈,我之前回答你的时候没有仔细检查

仔细观察下面两个的区别

panpanpan199146 发表于 2021-3-21 16:43:01

Daniel_Zhang 发表于 2021-3-20 00:01
不好意思哈

我那个回答是复制你的问题里面的表达式的,没有检查


非常感谢,正确了,因为经常要用到shift。所以一不小心就用了中文。
页: [1]
查看完整版本: 为什么要有两个加号且加空格,是定义为字符?