我试图拆分字符串,但得到值错误:需要多于1个值才能解压缩
我想我明白了,为什么会出现这种错误,它的发生是因为没有价值可以分割对吗?在
基本上我有for循环,它从xml返回字符串
for channel in tree.findall("channel"):
title = channel.find('title').text
channelname,tvguide = title.split("[")
print(channelname,tvguide)
当我打印出标题时,我有这样的东西:
BeIN Sports 1HD[07:00-07:30]+106.8分钟自动蒙迪尔
BeIN Sports 2HD值错误发生在这里?
贝恩体育3HD[23:00-02:00]+1216.8分钟都灵对阵美国巴勒莫城-意大利联赛(意甲)
BeIN Sports 4HD值错误发生在这里?
BeIN Sports 5HD[05:30-07:15]+91.8分钟马赛对安吉尔-法甲联赛2015-2016第7周
我的问题是,如何修复for循环,以便它将所有标题拆分到channelname&tvguide,即使某些字符串不包含tvguide?在
例如,在没有tvguide的频道中(在这个例子中,beinsports2hd,beinsports4hd),它应该使tvguide=“”或类似的东西。在
有什么想法吗?在
您可以使用简单的
if else
。在输出:
[['BeIN Sports 1HD ', '07:00 - 07:30] + 106.8 min Auto Mundial'], ('BeIN Sports 2H', '')]
现在您可以根据需要轻松地处理列表中的这些元组。在
与其尝试分别分配channelname和tvguide,不如使用
split
方法返回的列表。在这样,您就不必担心频道是否有名称或tvguide,但要确保在channel对象中得到一个字符串。在
^{pr2}$as Jon Clements suggested, we still need to figure out if its allowed to access description[1] and as he suggested an elegant way to do is str.partition
相关问题 更多 >
编程相关推荐