在文件中使用 ljust 时没有得到正确的格式

Not getting correct format when using ljust in file

我正在阅读一个文本文件(这里是该文件的一个片段:https://i.stack.imgur.com/O2c84.png),我的目标是通过用 " * " (eg abcd*********) 并将它们写入新文件。

下面我做的是

padding = '*'
len = 16

with open("WordList.txt", "r") as input:
     with open("NewWordList.txt", "w") as output:
        for x in input:
            x = x.ljust(len, padding)
            output.write(x)

当我打开新创建的文件时,填充会转到另一行,请参阅 link -> https://i.stack.imgur.com/QkuMo.png

有人可以帮助我了解问题出在哪里吗?我在 Python 还是新手。谢谢

原始文本文件中的每一行都以换行符结尾。您需要将其删除,然后 ljust,只需添加一个换行符即可。否则,填充会添加到换行符之后,这就是您所看到的。

padding = '*'
len = 16

with open("WordList.txt", "r") as input:
     with open("NewWordList.txt", "w") as output:
        for x in input:
            x = x.strip().ljust(len, padding)
            output.write(x + '\n')