Python文本文档读取添加进字典安按值排序输出

Python:我有一个文本每行是一个单词加上一个值,用空格隔开,如:night5.55我想把每行的词和相应的值输入字典并依照他得知从大到小排列,最终以文本文档形式输出单词... Python:
我有一个文本每行是一个单词加上一个值 ,用空格隔开, 如:night 5.55

我想把每行的词和相应的值输入字典并依照他得知从大到小排列,最终以文本文档形式输出单词
如:
night 5.55
morning 4.5
air 6

输出:
air
night
morning
展开
 我来答
日TimE寸
推荐于2016-11-18 · TA获得超过9568个赞
知道大有可为答主
回答量:1358
采纳率:83%
帮助的人:476万
展开全部

主要使用到了csv包,来读取数据

排序什么的是相对容易的事

import csv

with open('xx.txt') as f:
    data = dict(csv.reader(f, delimiter=' ', skipinitialspace=True))
    
rst = sorted(data.items(), key=lambda x:x[1], reverse=True)

with open('rst.txt', 'w') as f:
    for s,v in rst:
        print(s, file=f)

 代码使用的是Python3

更多追问追答
追问
data = dict(csv.reader(f, delimiter=' ', skipinitialspace=True))

ValueError: dictionary update sequence element #0 has length 1; 2 is required
但依上述代码 我用Python3.4.3执行会报错
追答
你确定数据的格式都是
night 5.55
morning 4.5
air 6
这样的,第一行有没有标题什么的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式