修剪js文件中的空格不能在python中工作

时间:2014-11-22 07:15:48

标签: javascript python string whitespace

我正在尝试打开一个javascript(.js)文件并从中删除所有标签,新行和空格,这是代码。

f1 = open('file1.js', 'r')
s = f1.read()
s.strip()
s.replace("\t", "")
s.replace(" ", "")
s.replace("\n", "")
f2 = open('file2.js', 'w+')
f2.write("//blobs\n"+s)
f1.close()
f2.close()

我知道我正在阅读和正确编写它因为file2.js最终为file1.js,// blobs为第一行。我一直在寻找解决方案,但他们都只是指出你可以使用strip()和replace()

1 个答案:

答案 0 :(得分:1)

Python的字符串是不可变的。因此,当您对字符串执行任何操作时,它将创建一个新字符串,而不是对原始字符串进行修改。因此,您可能希望链接更改,例如

with open('file1.js', 'r') as f1, open("file2.js", "w+") as f2:
    f2.write("//blobs\n" + f1.read().strip().replace("\t", "").replace("\n", ""))

这里,stripreplace每次调用时都会创建一个新的String对象。现在我们正在对新创建的字符串执行字符串操作,最后创建一个带有blobs的新字符串,这些更改将反映在“file2.js”

注意:我已使用with语句打开文件。详细了解this answer

中的with声明