【发布时间】:2021-01-16 18:01:58
【问题描述】:
我的拆分功能有问题——我在这里做错了什么?
我在标记的行收到错误:not enough values to unpack (expected 2, got 1)。
line 中的值为:;Electronics:iPhone,3999;Galaxy,2999;Xiaomi,1999。
第一次拆分后,newCategory 包含 "Electorincs",但 products 仅包含 "i"。
from collections import defaultdict
import sys
items = open("store.txt" , "r")
categories= dict()
for line in items:
if line == '\n':
break
details= line.split(':')
products=details[1]
newCategory=details[0].lstrip
categories[newCategory]=dict()
products=products[0].split(';')
for p in products:
name,price=p.split(',') # THIS LINE.
name=name.lstrip
price=price.lstrip
categories[newCategory][name]=price
【问题讨论】:
-
你明白错误信息告诉你什么吗?您的拆分返回一个只有一个元素的列表,而您正试图将其解压缩为两个。
-
我知道,这是因为第一次拆分没有给出完整的句子,只有“i”。