AttributeError:“dict”对象没有属性“split”将逗号分隔的标签转换为列表
Posted
技术标签:
【中文标题】AttributeError:“dict”对象没有属性“split”将逗号分隔的标签转换为列表【英文标题】:AttributeError: 'dict' object has no attribute 'split' to convert comma separated labels into a list 【发布时间】:2021-01-10 19:18:51 【问题描述】:您好,请帮助我处理此代码。它显示了这个错误。我正在尝试来自 (https://www.thepythoncode.com/article/skin-cancer-detection-using-tensorflow-in-python) 这个网站的代码示例。
AttributeError Traceback (most recent call last)
<ipython-input-7-39f8cfd85d69> in <module>
28 # you should replace "data" path to your extracted dataset path
29 # don't replace if you used download_and_extract_dataset() function
---> 30 generate_csv("data/train", "nevus": 0, "seborrheic_keratosis": 0,
"melanoma": 1)
31 generate_csv("data/valid", "nevus": 0, "seborrheic_keratosis": 0,
"melanoma": 1)
32 generate_csv("data/test", "nevus": 0, "seborrheic_keratosis": 0,
"melanoma": 1)
<ipython-input-7-39f8cfd85d69> in generate_csv(folder, labels)
6 label2int =
7 if labels:
----> 8 labels = labels.split(",")
9 for label in labels:
10 string_label, integer_label = label.split("=")
AttributeError: 'dict' object has no attribute 'split'
Code Picture
【问题讨论】:
【参考方案1】:在您致电generate_csv
时,更改
"nevus": 0, "seborrheic_keratosis": 0, "melanoma": 1
到:
"nevus=0,seborrheic_keratosis=0,melanoma=1"
它需要一个字符串,而不是一个字典。该字符串由一系列以逗号分隔的绑定组成,其中每个绑定的格式为“name=value”。
【讨论】:
您好,我尝试了您的解决方案,但它显示了不同的错误。 AttributeError: 'set' 对象没有属性 'split' ----> 8 个标签 = labels.split(",") @PriyaS 删除花括号。进行我展示的 exact 替换。您只更换了中心部分。将“之前”文本完全替换为“之后”文本。 “之前”文本包括花括号。 “之后”文本没有。您需要传递一个字符串。由于您没有删除花括号,因此您传递的是set
,这是行不通的。以上是关于AttributeError:“dict”对象没有属性“split”将逗号分隔的标签转换为列表的主要内容,如果未能解决你的问题,请参考以下文章
Django 频道实时聊天:AttributeError:“消息”对象没有属性“as_dict”
AttributeError:“模块”对象没有属性“SVM_LINEAR”
DeepFace.analyze:AttributeError:模块'keras.utils.generic_utils'没有属性'populate_dict_with_module_objects
如何更正错误“AttributeError: 'dict_keys' object has no attribute 'remove'”?
获取 AttributeError: 'dict' object has no attribute 'parse' 。尝试读入多个 xlsx 文件时