Python 字典更新序列元素#10的长度为0;2是必需的

Python 字典更新序列元素#10的长度为0;2是必需的,python,dictionary,Python,Dictionary,同样的错误不断重复:( 代码: 这是语法错误: Traceback (most recent call last): File "C:/Documents and Settings/Naoman/Desktop/Naoman's Work/Computer Science/CA Final week/CA.6.py", line 42, in <module> query() File "C:/Documents and Settings/Naoman/Deskto

同样的错误不断重复:(

代码:

这是语法错误:

Traceback (most recent call last):
  File "C:/Documents and Settings/Naoman/Desktop/Naoman's Work/Computer Science/CA Final week/CA.6.py", line 42, in <module>
    query()
  File "C:/Documents and Settings/Naoman/Desktop/Naoman's Work/Computer Science/CA Final week/CA.6.py", line 31, in query
    dictq = dict(x.rstrip().split(None, 1)for x in f)
ValueError: dictionary update sequence element #10 has length 0; 2 is required
回溯(最近一次呼叫最后一次):
文件“C:/Documents and Settings/Naoman/Desktop/Naoman's Work/Computer Science/CA Final week/CA.6.py”,第42行,在
查询()
文件“C:/Documents and Settings/Naoman/Desktop/Naoman's Work/Computer Science/CA Final week/CA.6.py”,第31行,在查询中
dictq=dict(x.rstrip().split(无,1)表示f中的x)
ValueError:字典更新序列元素#10的长度为0;需要2

这是打开的文件(记事本):

我开始充电了

音量将其更改为声音/正常模式

相机移除阻挡镜头的材料

手机下面的水要晾干

过热使手机在凉爽的环境中冷却

这是因为你不在覆盖范围内,试着改变你的位置来捕捉信号

wifi有两种方法可以解决此问题,首先删除我的数据

储存良好,您可以在凉爽的环境中冷却

请取出电池并放回原处以重新启动手机


不幸的是,解决问题的唯一方法是重置手机,这可能是因为您到达了文件的末尾

您可以添加一个

try:
    ...
except ValueError:
    ...

在这种情况下(使用
break
)阻塞代码,使其停止。

这可能是因为您到达了文件的末尾

您可以添加一个

try:
    ...
except ValueError:
    ...
在这种情况下(使用
中断
)。空字符串上的
拆分(无,1)
将返回一个空列表,这可能是此错误的原因。您可以使用以下代码段重现此错误:

dict(x.split(None, 1) for x in [''])
一个潜在的修复方法是避免在空行上调用
split()

dict(x.rstrip().split(None, 1) for x in f if x)
split(None,1)
在空字符串上返回一个空列表,这可能是此错误的原因。您可以使用以下代码段重现此错误:

dict(x.split(None, 1) for x in [''])
一个潜在的修复方法是避免在空行上调用
split()

dict(x.rstrip().split(None, 1) for x in f if x)
请不要对全局变量和局部变量使用相同的名称。如果使用
split(,1)
,通常意味着您确实需要
.partition()
,这可能会避免错误。不要编辑“已解决”在你的问题中——你通过接受一个答案来标记已解决的问题,即单击旁边的复选框。如果其他人发布的答案都没有帮助,请添加你自己的答案。(作为问答知识库而不是讨论板的一部分,我们试图对问题和答案进行评分和改进;如果您将选择的答案编辑到您的问题中,即使在标题中,该问题也不再独立于答案,从而消除了社区表达自己偏好的能力,即:答案与用户的答案分开问问题的人)。艾克,请不要对全局变量和局部变量使用相同的名称。如果使用
split(,1)
,通常意味着您确实需要
.partition()
,这可能会避免您的错误。不要编辑“已解决”在你的问题中——你通过接受一个答案来标记已解决的问题,即单击旁边的复选框。如果其他人发布的答案都没有帮助,请添加你自己的答案。(作为问答知识库而不是讨论板的一部分,我们试图对问题和答案进行评分和改进;如果您将选择的答案编辑到您的问题中,即使在标题中,该问题也不再独立于答案,从而消除了社区表达自己偏好的能力,即:答案与用户的答案分开提出问题的人)。