[英]How can we write a text file from variable using python?
我正在研究 NLP 项目,并使用 PyPDF2 从 pdf 中提取了文本。 此外,我删除了空白行。 现在,我的 output 正在控制台上显示,但我想用存储在我的变量(文件)中的相同数据填充文本文件。
下面是从文本文件中删除空行的代码。
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file=line
print(file)
Output on Console: Eclipse, Visual Studio 2012, Arduino IDE, Java, HTML, CSS 2013 Excel.
现在,我想要在我的 (resume1.txt) 文本文件中使用相同的数据。 我使用了三种方法,但所有这些方法都会在我的 resume1.txt 文件中打印一个点。 如果我在文本文件的末尾看到,那么有一个正在打印的点。
方法一:
with open("resume1.txt", "w") as out_file:
out_file.write(file)
方法二:
print(file, file=open("resume1.txt", 'w'))
方法三:
pathlib.Path('resume1.txt').write_text(file)
能否请您帮助我填充文本文件。 谢谢您的合作。
首先,请注意您正在写入丢失旧数据的同一个文件,我不知道您是否要这样做。 除此之外,每次使用这些方法写入时,都会覆盖之前写入 output 文件的数据。 所以,如果你想使用这些方法,你必须只写1次(写所有数据)。
to_file = []
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file = line
print(file)
to_file.append(file)
to_save = '\n'.join(to_file)
with open("resume1.txt", "w") as out_file:
out_file.write(to_save)
to_file = []
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file = line
print(file)
to_file.append(file)
to_save = '\n'.join(to_file)
print(to_save, file=open("resume1.txt", 'w'))
import pathlib
to_file = []
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file = line
print(file)
to_file.append(file)
to_save = '\n'.join(to_file)
pathlib.Path('resume1.txt').write_text(to_save)
在这 3 种方法中,我使用to_save = '\n'.join(to_file)
因为我假设你想用 EOL 分隔每一行,但如果我错了,你可以只使用''.join(to_file)
如果你不想要空格,或者' '.join(to_file)
如果你想要所有的行都在一个单一的。
你可以通过使用其他文件来做到这一点,比如说'output.txt'。
out_file = open('output.txt', 'w')
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file = line
print(file)
out_file.write(file)
out_file.write('\n') # EOL
out_file.close()
另外,你可以这样做(我更喜欢这个):
with open('output.txt', 'w') as out_file:
for line in open('resume1.txt'):
line = line.rstrip()
if line != '':
file = line
print(file)
out_file.write(file)
out_file.write('\n') # EOL
堆栈上的第一篇文章,请原谅格式
new_line = ""
for line in open('resume1.txt', "r"):
for char in line:
if char != " ":
new_line += char
print(new_line)
with open('resume1.txt', "w") as f:
f.write(new_line)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.