Python文字长度从文本文件计数

时间:2013-07-07 21:45:57

标签: python

我正在开展一个项目。我已经能够完成所有要求的总计行数,分隔和排序以及总字母数。我遇到的问题是列出每个单词的长度。示例::3,它:2,等等...我不是要查找它在文本文件中出现的次数。

i=open("words.txt").read().splitlines()

f= len(open("words.txt").readlines())

t= sorted (i)

e= "\n".join(t)

g= sum(len(e) for e in (i))

非常感谢任何有关如何为每个单词设置单词长度的帮助。

4 个答案:

答案 0 :(得分:2)

这应该是你要找的东西:

string = open('file.txt').read()

for word in string.split():
    print len(word)

答案 1 :(得分:0)

这假设每一行都有很多单词,用空格分隔。

with open('words.txt') as my_file:
    words = []
    for line in my_file:
        words.extend(line.split())
print {w: len(w) for w in words)}

可替换地:

with open('words.txt') as my_file:
    print {w: len(w) for w in words.split() for words in line for line in my_file}

答案 2 :(得分:0)

不确定它是否是最佳的,但如果每个单词都用空格分隔,这应该是有用的:

i=open("words.txt").read().splitlines()

[[len(k) for k in j.split(' ')] for j in i]

答案 3 :(得分:0)

你可以这样做:

>>> with open('/usr/share/dict/words','r') as f:
...    print(max(f,key=len))
... 
formaldehydesulphoxylate

然后只需要考虑的长度:

>>> with open('/usr/share/dict/words','r') as f:
...    longest=max(f,key=len)
... 
>>> print(len(longest))
25