hi当前正在执行一个代码,其中程序调用两个文件,一个是单词的位置,另一个是单词,下面的代码将它们组合在一起,但是当我更改要从文件导入的代码时,会出现以下错误(if compressed_sentence[(int(i)-1)]==uncompressed:ValueError:以10为基数的int()的文本无效:“['1',”)
下面是我的代码:
uncompressed = 0
file1 = open ("NonDupT2.txt" , "r")
compressed_sentence=file1.read()
file1.close()
file1 = open ("PositionT2.txt" , "r")
compressed_Positionsonly=file1.read()
file1.close()
compressed_Positions= compressed_Positionsonly.split()
print(str(compressed_Positions))
for i in compressed_Positions:
if compressed_sentence[(int(i)-1)]==uncompressed:
print(compressed_sentence[(int(i))])
uncompressed = compressed_sentence[(int(i))]
else:
print(compressed_sentence[(int(i)-1)])
uncompressed=compressed_sentence[(int(i)-1)]
print(str(int(i)))
然而,当程序确定变量时,它是有效的
^{pr2}$
问题是压缩后的峎u位置被错误读取。文件将内容作为一个字符串读取。该字符串是文本文件的全部内容。在
split操作符生成一个字符串列表。该列表的第一个元素是从文件到第一个空格的所有内容
这就是int()所解释的,但它不起作用。我认为您的PositionT2.txt包含:
^{pr2}$如果它包含:
要使程序与具有显式定义的示例一样工作,还需要一个用于压缩句子的split运算符,并且NonDupT2.txt文件必须包含
也可以在文本文件中使用换行符作为分隔符,而不是空格。在
祝你好运, 乔斯特
相关问题 更多 >
编程相关推荐