我正在尝试打开一个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()
答案 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", ""))
这里,strip
和replace
每次调用时都会创建一个新的String对象。现在我们正在对新创建的字符串执行字符串操作,最后创建一个带有blobs
的新字符串,这些更改将反映在“file2.js”
注意:我已使用with
语句打开文件。详细了解this answer
with
声明