我有一个 Python 文件(/home/test.py
),其中混合了空格和制表符。
是否有一种编程方式(注意:是编程方式,不是使用编辑器)将此文件转换为仅使用制表符?(即,用单个tab
替换任何现有的4-spaces
出现次数)?
非常感谢提供 Python 代码示例或 Linux 命令来完成以上操作。谢谢。
我有一个 Python 文件(/home/test.py
),其中混合了空格和制表符。
是否有一种编程方式(注意:是编程方式,不是使用编辑器)将此文件转换为仅使用制表符?(即,用单个tab
替换任何现有的4-spaces
出现次数)?
非常感谢提供 Python 代码示例或 Linux 命令来完成以上操作。谢谢。
sed
的任务:sed -e 's/ /\t/g' test.py > test.new
[请使用真正的制表符代替 \t]
然而...
每个缩进级别使用 4 个空格。
sed
命令是什么)? - user3262424expandtabs()
函数。 - johnsyweb你可以尝试迭代文件并进行替换操作,例如:
import fileinput
for line in fileinput.FileInput("file",inplace=1):
print line.replace(" ","\t")
或者您可以尝试使用*nix工具,例如sed/awk
$ awk '{gsub(/ /,"\t")}1' file > temp && mv temp file
$ ruby -i.bak -ne '$_.gsub!(/ /,"\t")' file