在python中读取文本文件并将其拆分为单个单词

在python中读取文本文件并将其拆分为单个单词,第1张

在python中读取文本文件并将其拆分为单个单词

给定此文件:

$ cat words.txtline1 word1 word2line2 word3 word4line3 word5 word6

如果您一次只想要一个字(忽略文件中空格与换行符的含义):

with open('words.txt','r') as f:    for line in f:        for word in line.split():print(word)

印刷品:

line1word1word2line2...word6

同样,如果要将文件拼合为文件中单个单词的平面列表,则可以执行以下 *** 作:

with open('words.txt') as f:    flat_list=[word for line in f for word in line.split()]>>> flat_list['line1', 'word1', 'word2', 'line2', 'word3', 'word4', 'line3', 'word5', 'word6']

使用

print 'n'.join(flat_list)
…可以创建与第一个示例相同的输出

或者,如果要在文件的每一行中嵌套单词列表(例如,从文件创建行和列的矩阵):

with open('words.txt') as f:    matrix=[line.split() for line in f]>>> matrix[['line1', 'word1', 'word2'], ['line2', 'word3', 'word4'], ['line3', 'word5', 'word6']]

如果您想使用正则表达式解决方案,则可以在示例文件中过滤

wordN
lineN
键入单词:

import rewith open("words.txt") as f:    for line in f:        for word in re.findall(r'bwordd+', line): # wordN by wordN with no lineN

或者,如果您希望它成为带有正则表达式的逐行生成器:

 with open("words.txt") as f:     (word for line in f for word in re.findall(r'w+', line))


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5651014.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存