使用python或宏Word进行文字处理

2024-10-02 14:21:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我不是一个好的程序员,我必须诚实地说,在这种情况下,我找不到一个舒适的解决方案

我有一个来自视频字幕的文本文件,我想创建一个更方便的文本文件。我在这里插入一个gif来显示我想做什么

我用word office VB创建了一个宏,但它不能满足我的要求

你对此有什么建议吗

简单宏字办公室

Sub Macro1()
'
' Macro1 Macro
'
'
    Selection.TypeBackspace
    Selection.TypeBackspace
    Selection.TypeText Text:=" "
End Sub

中的简单文本:

a casa il curare la persona a casa
limita anche e razionalizza i costi
della sanità è il paziente e il nostro
familiare che ripeto come dicevo prima è
limitato nel suo corpo e del riciclo in
tutto l'amore di questo mondo quindi
questo è un qualcosa che noi perché per
noi deve diventare come dicevo prima un
obbligo uno stato non deve essere un
qualcosa che dobbiamo fare e siamo
obbligati a farlo chi è già sfortunato
ripeto da chi sicuramente non lo è deve
essere aiutato il tutti quanti modi
necessita per questo o per questa
problematica voi un'idea ce l'avete

简单文本输出:

a casa il curare la persona a casa limita anche e razionalizza i costi della sanità è il paziente e il nostro familiare che ripeto come dicevo prima è limitato nel suo corpo e del riciclo in tutto l'amore di questo mondo quindi questo è un qualcosa che noi perché per noi deve diventare come dicevo prima un obbligo uno stato non deve essere un qualcosa che dobbiamo fare e siamo obbligati a farlo chi è già sfortunato ripeto da chi sicuramente non lo è deve essere aiutato il tutti quanti modi necessita per questo o per questa problematica voi un'idea ce l'avete

enter image description here


Tags: cheilunnonpercasaprimanoi
1条回答
网友
1楼 · 发布于 2024-10-02 14:21:18

这里有一种方法:

  1. 将整个文件读入一个行列表,并删除它们之间的换行符
  2. 编写一个新文件,将所有这些行合并为一个长行,并用空格字符分隔
with open("separate_lines.txt", "r") as file:
    lines = file.read().splitlines()

with open("merged_lines.txt", "w") as file:
    file.write(' '.join(lines) + '\n')

print('done')

下面是另一种稍微复杂一点的方法,它一行一行地迭代处理文件,这样就不需要立即将整个内容读入内存:

with open("separate_lines.txt","r") as inp, open("merged_lines.txt","w") as outp:
    outp.write(next(inp).rstrip())  # Read and write first line.
    for line in inp:
        outp.write(' ' + line.rstrip())  # Write following lines prefixed with a space.
    outp.write('\n')  # End output file with a single newline.

print('done')

相关问题 更多 >