这是python脚本中使用的Unicode字词数组。
texts =[u"abc", u"pqr", u"mnp"]
脚本正如预期的那样使用上面的3个单词示例。问题是文本文件中有数千个单词。 我如何阅读文本文件?
更新 我有2个问题。文本文件中的单词序列不会保留在输出中。 该文本文件具有unicode字符,因此在我的原始示例中为“u”。
# cat testfile.txt
Testing this file with Python
# cat test.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
f = open('testfile.txt', 'r')
texts = set(f.read().split())
print (texts)
# python test.py
set(['this', 'Python', 'Testing', 'with', 'file'])
答案 0 :(得分:2)
答案 1 :(得分:2)
我发现您的文件读取代码没有问题。鉴于单词出现在由空格分隔的文件中,并且文件不是太大而无法用单个read
吞换,它应该可以正常工作。真正的问题是如果你把它们推到set
中,那么单词的顺序。
如果您需要与文件中显示的顺序相同的单词,为什么使用set
?只需将它们保存在列表中即可。
如果您需要set
来删除重复项和/或其他用途,那么您有以下选择:
OrderedDict
类 - 标准,并且早期版本的在线存在配方。