如何遍历 replace() 函数 python
how to iterate through replace() function python
我正在尝试遍历我的 replace() 函数,以删除我的 .txt 文件中的 [1:n](见下图),但它似乎不起作用。
我试过很多东西:
with open('glad.txt', 'rt') as f:
content = f.read()
for line in content:
for x in range(118):
z = line.replace(f"[{x}]", "")
f.close()
print(z)
还有:
with open('glad.txt', 'rt') as f:
content = f.read()
test = open("out.txt", "wt")
for line in content:
for x in range(120):
z = test.write(line.replace(f"[{x}]", ""))
f.close()
print(z)
但都没有成功。
有谁知道如何解决这个问题?
此解决方案使用 re.sub() 函数来替换这些字符。
import re
text = """
OK this is some text. [123][456][789]
just some more text.[007]
"""
output = re.sub(r'\[\d+\]', '', text)
print(output)
输出
OK this is some text.
just some more text.
更新:
添加文件读取示例。确保将文件作为第一个参数传递给脚本。
import re
import sys
with open(sys.argv[1]) as fin:
text = fin.read()
output = re.sub(r'\[\d+\]', '', text)
print(output)
我正在尝试遍历我的 replace() 函数,以删除我的 .txt 文件中的 [1:n](见下图),但它似乎不起作用。
我试过很多东西:
with open('glad.txt', 'rt') as f:
content = f.read()
for line in content:
for x in range(118):
z = line.replace(f"[{x}]", "")
f.close()
print(z)
还有:
with open('glad.txt', 'rt') as f:
content = f.read()
test = open("out.txt", "wt")
for line in content:
for x in range(120):
z = test.write(line.replace(f"[{x}]", ""))
f.close()
print(z)
但都没有成功。
有谁知道如何解决这个问题?
此解决方案使用 re.sub() 函数来替换这些字符。
import re
text = """
OK this is some text. [123][456][789]
just some more text.[007]
"""
output = re.sub(r'\[\d+\]', '', text)
print(output)
输出
OK this is some text.
just some more text.
更新:
添加文件读取示例。确保将文件作为第一个参数传递给脚本。
import re
import sys
with open(sys.argv[1]) as fin:
text = fin.read()
output = re.sub(r'\[\d+\]', '', text)
print(output)