iam对python不熟悉,得到以下错误类型error:必须是str,而不是Tag

2024-10-04 01:35:33 发布

您现在位置:Python中文网/ 问答频道 /正文

程序

enter image description here

错误

F:\aaa\1\homerun>python hometrial.py
product_name: Sunrise Simulator Alarm Clock
Traceback (most recent call last):
  File "hometrial.py", line 33, in <module>
    print("desc: " + desc)
TypeError: must be str, not Tag

Tags: namepy程序most错误productdescsimulator
1条回答
网友
1楼 · 发布于 2024-10-04 01:35:33

在你说print("desc:" + desc)的地方,你正试图将这两个值连接起来。由于desc是一个名为Tag的类型,“desc:”是一个字符串。或者尝试使用str函数(str(desc))将desc转换为字符串,或者通过将+更改为,将它们作为独立参数而不是串联它们。在

print("Desc: ", desc) 工作正常:)

为什么它不能隐式转换成字符串?

Python是一种强类型语言。简而言之,这意味着对数据调用的操作必须与类型相关并适用于该类型。例如,尝试my_num = 5 + "5"将引发一个TypeError,因为添加字符串(“5”)和整数(5)是不可能的。标记和字符串是不同的类型,因此Python不允许将它们连接起来。在JavaScript(弱类型语言)中,添加"5" + 5将得到55,因为它将隐式地将5转换为一个字符串,然后连接它们。在

相关问题 更多 >