很抱歉,如果这是在某个地方,但我无法找到我正在寻找的解决方案。我想在没有引号的情况下返回字典的值,并且无法弄清楚我做错了什么。
def read_wiktionary():
answer = dict()
f = open('wiktionary.txt', 'r')
for line in f:
word,value = line.rstrip('\n').split(' ')
answer[word] = (value)
return answer
答案 0 :(得分:1)
报价仅用作不同键和值之间的分隔符,因此无法删除。报价不会影响字典中的值。
答案 1 :(得分:0)
当您读取文件时,所有内容都将被读取为字符串。要获得浮点值,您需要将其转换为浮动值。
def read_wiktionary():
answer = dict()
f = open('wiktionary.txt', 'r')
for line in f:
word, value = line.rstrip('\n').split(' ')
answer[word] = float(value)
return answer
顺便说一句,使用with
打开文件以便在退出块时自动关闭它通常是一种很好的做法。来自the docs:
最好在处理文件时使用with关键字 对象。这样做的好处是文件在之后正确关闭 它的套件即使在路上引发异常也会完成。
所以,我建议:
def read_wiktionary():
answer = {}
with open('wiktionary.txt', 'r') as f:
for line in f:
word, value = line.rstrip('\n').split(' ')
answer[word] = float(value)
return answer