我试图做一个简单的翻译器,从一个搁置模块的字典,我可以键入英文单词,程序逐字翻译输入,然后将结果放入.txt文件。这几乎就是我目前所拥有的。在
import shelve
s = shelve.open("THAI.dat")
entry = input("English word")
define = input("Thai word")
s[entry]=define
text_file = open("THAI.txt", "w+")
trys = input("Input english word")
if trys in s:
print(s[trys])
part = s[trys]
text_file.write(part)
这就是错误出现的地方。我认为问题是这个部分是一个列表,应该是一个字符串,才能写入.txt文件。我该怎么办。我只是个初学者,所以我可能缺少一些基本的东西。这是错误。在
^{pr2}$最后我希望能做到这一点
text_file.readlines()
然后甚至可以进入文本文件查看翻译。在
从您的评论来看,除了没有
s[entry]=[define]
,我认为您需要使用正确的编解码器读写一个泰文文件。在假设文件
thai.dat
是用UTF-8(假设)编写的,那么现在需要比较使用相同编解码器的字符串和使用相同编解码器编写数据文件的字符串。在首先,从命令shell中尝试以下行:
如果它打印
ascii
,那么您可能需要将默认编码设置为UTF-8,否则字符串比较将无法正常工作。在另外,您需要以UTF-8模式打开输出文件,如下所示:
^{pr2}$然后像往常一样写这个文件。在
相关问题 更多 >
编程相关推荐