将输入行拆分为问答对
将一行输入拆分为多个变量时,可能会遇到 ValueError 指示需要用于解压更多或更少的值。当被分割的行不包含分割方法中使用的分隔符时,就会出现此问题。
具体来说,在提供的代码中,输入文件中的每一行都在冒号 (:) 处分割。如果一行中不包含冒号或多个冒号,则 split 方法将失败。
值错误的原因
解决方案
要解决此问题,您可以在分割之前检查输入行是否包含预期数量的值:
with open('qanda.txt', 'r') as questions_file: for line in questions_file: line = line.strip() if ':' in line: questions, answers = line.split(':') questions_list.append(questions) answers_list.append(answers)
此检查可确保该行在尝试分割之前包含冒号。如果该行不包含冒号,则会被忽略,从而防止引发 ValueError。
以上是分割问答对的输入行时如何处理 ValueError?的详细内容。更多信息请关注PHP中文网其他相关文章!