如何使用python将gzip文件中的字符串替换为另一个字符串?

如何使用python将gzip文件中的字符串替换为另一个字符串?,python,html,Python,Html,我试图在gzip中找到特定的字符串,用另一个字符串替换它并更新gzip文件 这是我的python脚本 import gzip import string lines = gzip.open("PhoneWindowManager.java.gz", "rb") definition = "name="+'"setHdmiPlugged"'+"/>" print definition for line in lines: if definition in line:

我试图在gzip中找到特定的字符串,用另一个字符串替换它并更新gzip文件

这是我的python脚本

import gzip
import string

lines = gzip.open("PhoneWindowManager.java.gz", "rb")
definition = "name="+'"setHdmiPlugged"'+"/>"
print definition   
for line in lines:    
    if definition in line:
        before = ">"+"setHdmiPlugged"+"</a>"
        print before
        after = " title="+'"Join"'+"><font color="+'"red"'">"+"setHdmiPlugged"+"</font></a>"
        print after
        new_str = string.replace(line, before, after)
        print new_str
        **** How can I update the gzip file with the new_str? ****
        break
导入gzip
导入字符串
lines=gzip.open(“PhoneWindowManager.java.gz”、“rb”)
definition=“name=“+””setHdmiPlugged“+”/>
打印定义
对于行中的行:
如果定义符合:
before=“>”+“setHdmiPlugged”+“
打印之前
在=“title=“+””之后加入“+”>“+”setHdmiPlugged“+”
打印后
new_str=string.replace(行、前、后)
打印新的
****如何使用新的\u str更新gzip文件****
打破
如何替换特定字符串并写入它

实际上,我想用超链接标题和红色更新方法定义的html标记

以前

<a class="l" name="5132" href="#5132">5132</a>    <b>void</b> <a class="xmt" name="setHdmiPlugged"/><a href="/source/s?refs=setHdmiPlugged&amp;project=android" class="xmt">setHdmiPlugged</a>(<b>boolean</b> <a class="xa" name="plugged"/><a href="/source/s?refs=plugged&amp;project=android" class="xa">plugged</a>) {
void(布尔值){
之后

void(布尔值){
编辑

我已完成此代码。如果需要,请参考以下代码

import gzip
import string
import os

os.rename("PhoneWindowManager.java.gz","PhoneWindowManager_orig.java.gz")
input = gzip.open("PhoneWindowManager_orig.java.gz", "rb")
output = gzip.open("PhoneWindowManager.java.gz", "wb")
definition = "name="+'"setHdmiPlugged"'+"/>"

for line in input:    
    if definition in line:            
        before = ">"+"setHdmiPlugged"+"</a>"        
        after = " title="+'"Join"'+"><font color="+'"red"'">"+"setHdmiPlugged"+"</font></a>"
        new_str = string.replace(line, before, after)
        output.write(new_str)
    else:     
        output.write(line)

input.close()
output.close()
导入gzip
导入字符串
导入操作系统
重命名(“PhoneWindowManager.java.gz”、“PhoneWindowManager_orig.java.gz”)
input=gzip.open(“PhoneWindowManager_orig.java.gz”,“rb”)
output=gzip.open(“PhoneWindowManager.java.gz”、“wb”)
definition=“name=“+””setHdmiPlugged“+”/>
对于行输入:
如果定义符合:
before=“>”+“setHdmiPlugged”+“
在=“title=“+””之后加入“+”>“+”setHdmiPlugged“+”
new_str=string.replace(行、前、后)
输出.写入(新的\u str)
其他:
输出。写入(行)
input.close()
output.close()

这是替换特定字符串的一种方法:

打印
a
时,输出为:

string 2

这是替换特定字符串的一种方法:

打印
a
时,输出为:

string 2
string 2