如何使用python从变量编写文本文件?

如何使用python从变量编写文本文件?,python,python-3.x,file,variables,text,Python,Python 3.x,File,Variables,Text,我正在从事NLP项目,并使用PyPDF2从pdf中提取文本。此外,我删除了空白行。现在,我的输出显示在控制台上,但我想用存储在变量(文件)中的相同数据填充文本文件 下面是从文本文件中删除空白行的代码。 for line in open('resume1.txt'): line = line.rstrip() if line != '': file=line print(file) 控制台上的输出: 日食, Visual Studio 2012, Arduino IDE,

我正在从事NLP项目,并使用PyPDF2从pdf中提取文本。此外,我删除了空白行。现在,我的输出显示在控制台上,但我想用存储在变量(文件)中的相同数据填充文本文件

下面是从文本文件中删除空白行的代码。

for line in open('resume1.txt'):
  line = line.rstrip()
  if line != '':
    file=line
    print(file)
控制台上的输出: 日食, Visual Studio 2012, Arduino IDE, JAVA , HTML, CSS 2013 擅长

现在,我希望在我的(resume1.txt)文本文件中有相同的数据。我使用了三种方法,但所有这些方法在我的resume1.txt文件中只打印一个点。如果我看到文本文件的末尾有一个点正在打印

方法1:

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)
方法2:

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)
方法3:

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)

你能帮我填一下这个文本文件吗。谢谢您的合作。

在stack上发布第一篇文章,请原谅格式错误

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)

首先,请注意,您正在向同一个文件写入丢失的旧数据,我不知道您是否希望这样做。除此之外,每次使用这些方法写入时,都会覆盖以前写入输出文件的数据。因此,如果要使用这些方法,必须只写一次(写所有数据)

解决 使用方法1: 使用方法2: 使用方法3: 在这3种方法中,我使用了
来保存='\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()
此外,您可以这样做(我更喜欢这样):


如果您在循环后写入此内容,则
文件
将包含最后一行非空行,这恰好是句号/dot.Hi,我是否应该在循环内写入此内容。@如果是,请在循环内写入,谢谢您的回复。它只是删除单词之间的空格。但是,我想删除空行。。。e、 g Hello World输出应该是:Hello WorldIt现在工作正常。非常感谢你。非常感谢。@Yousaf如果不客气的话。如果这有帮助的话,如果你把这个答案作为解决方案,我将不胜感激。如果这不是解决方案,请提供您需要的更多信息。