我还在学习python,尝试一些事情。
我有搜索单词' Lorem'在文本中,用列表中的随机单词替换。这很有效。
我现在要做的是如何检查列表中的任何单词(单词= ['和',' a','是',&# 39;'])在文本中,并替换为另一个列表中的另一个单词(t = [' TEXT',' REPLACE',' WORD'] )。
我想取代Lorem'使用变量或循环直通列表或打开带有要检查的单词的txt文件。
res = re.sub(' Lorem',lambda x:random.choice(t),text)
如果可能,如果有人可以向我展示所有3个选项:
- 循环列表 -变量 -open文件里面有文字
或许还有其他更好的方法?
谢谢!
这里是完整代码
import re
import random
t = ['TEXT', 'REPLACE', 'WORD']
text = '''Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum'''
words = ['and', 'a', 'is', 'the']
res = re.sub('Lorem', lambda x: random.choice(t), text)
print(res)
答案 0 :(得分:0)
以下代码将使用text
中的随机字替换位于words
的{{1}}中的任何字词。
replacement
如果您希望从import random
replacement = ['TEXT', 'REPLACE', 'WORD', 'LIST']
text = '''Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum'''
# with open('ipsum.txt') as tf: text = tf.read(None)
words = ['and', 'a', 'is', 'the']
text_words = text.split()
for ti, tw in enumerate(text_words):
if tw in words:
text_words[ti] = random.choice(replacement)
print(' '.join(text_words))
# Possible output:
# Lorem Ipsum WORD simply dummy text of LIST printing REPLACE typesetting industry. Lorem Ipsum has been REPLACE industry's standard dummy text ever since TEXT 1500s, when an unknown printer took WORD galley of type LIST scrambled it to make WORD type specimen book. It has survived not only five centuries, but also TEXT leap into electronic typesetting, remaining essentially unchanged. It was popularised in WORD 1960s with REPLACE release of Letraset sheets containing Lorem Ipsum passages, REPLACE more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum
获取与replacement
相同的索引,则可以使用此循环:
words