首页 / PYTHON / python-从文本文件创建字典
python-从文本文件创建字典
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-从文本文件创建字典,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1147字,纯文字阅读大概需要2分钟。
内容图文
![python-从文本文件创建字典](/upload/InfoBanner/zyjiaocheng/656/3f1e4f2084174db68928599ee9d4a32e.jpg)
好的,我正在尝试从文本文件创建字典,因此键是单个小写字符,每个值都是文件中以该字母开头的单词的列表.
文本文件每行包含一个小写单词,例如:
airport
bathroom
boss
bottle
elephant
输出:
words = {'a': ['airport'], 'b': ['bathroom', 'boss', 'bottle'], 'e':['elephant']}
Havent确实做了很多工作,只是感到困惑,我该如何从每行中获取第一个索引并将其设置为键并附加值.如果有人可以帮助我进行交易,我将不胜感激.
words = {}
for line in infile:
line = line.strip() # not sure if this line is correct
解决方法:
因此,让我们检查您的示例:
words = {}
for line in infile:
line = line.strip()
这看起来很好.现在您想对这条线做些什么.可能需要第一个字符,可以通过第[0]行进行访问:
first = line[0]
然后,您要检查字母是否已在字典中.如果没有,您可以添加一个新的空列表:
if first not in words:
words[first] = []
然后,您可以将单词附加到该列表:
words[first].append(line)
大功告成!
如果行已经按照示例文件中的顺序进行了排序,则还可以使用itertools.groupby,它稍微复杂一些:
from itertools import groupby
from operator import itemgetter
with open('infile.txt', 'r') as f:
words = { k:map(str.strip, g) for k, g in groupby(f, key=itemgetter(0)) }
您还可以首先对行进行排序,这使得此方法通常适用:
groupby(sorted(f), ...)
内容总结
以上是互联网集市为您收集整理的python-从文本文件创建字典全部内容,希望文章能够帮你解决python-从文本文件创建字典所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。