如果我使用:
>>> n = input("What is your name? ")
What is your name? 23
>>> print("Hello " + n)
输出为
Hello 23
然后正确打印。但是,如果我使用:
>>> n = 1
>>> print("Hello" + n)
结果:
Traceback (most recent call last): File "<pyshell#74>", line 1, in
<module>
print("Hello" + n) TypeError: can only concatenate str (not "int") to str
然后给出一个错误。
我知道在不使用str()
函数的情况下不允许使用字符串打印数字,因此在第一种情况下为什么不给出错误?
答案 0 :(得分:3)
因为input()
始终返回str
。
在您的第一个示例中,n
是"23"
,而不是23
,因此串联是有效的。
答案 1 :(得分:3)
input
函数始终返回一个字符串,因此即使用户输入了数字,input
仍然返回字符串中的数字,因此可以将其与另一个字符串连接。
答案 2 :(得分:1)
这是因为my_dict = {'fruit': ['apple']}
返回一个字符串,即您的示例中的字符串my_dict = {'fruit': 'apple'}
li = my_dict.get('fruit')
if type(li) is list:
for fruit in li:
print(fruit)
else:
print(li)
。
检查:
input()
答案 3 :(得分:0)
运算符apiVersion: v1
kind: Service
metadata:
name: identity-cluster-ip-service
spec:
type: ClusterIP
selector:
component: identity-service
ports:
- port: 5050
targetPort: 5050
的操作取决于操作数的类型,但是两者必须相同。对于字符串,它是用于连接的,因此,两个操作数都应为同一类型+
。但是,type
仍然允许您使用string
在同一行上打印两种不同类型的操作数。
例如
python