%在文件中是什么意思

What does % mean in a file

我在 cat 文件时得到一个 '%' 字符。当我使用 sublime text 或 vim 打开它时,这个 '%' 字符没有出现。我正在使用以下代码生成我的 json.txt 文件:

import json

filename = "json.txt"


with open(filename, "r+") as f:
    x = [1, 'simple', 'list']
    json.dumps(x)
    json.dump(x, f)

文件末尾没有新行。 % 是文件的结尾。

如果你运行 cat看到%,正如DroidX86所说,这意味着文件末尾没有新行,你可以避免这种情况使用以下代码时出现问题:

import json

filename = "json.txt"

with open(filename, "r+") as f:
    x = [1, 'simple', 'list']
    print(json.dumps(x, indent=4),file=f)

现在,如果您 运行 cat,您将不再看到 %,因为函数 print 为您添加了一个新行。