【发布时间】:2019-11-23 05:57:34
【问题描述】:
我有一个 python 程序,它读取一个 csv 文件,进行一些更改,然后写入一个 HTML 文件。问题是一段代码,我试图搜索分配给一个变量的字符串,然后用分配给另一个变量的另一个字符串替换它。我可以在 csv 文件中读取如下所示的一行:
Link:,www.google.com
我成功编写了一个带有以下内容的 html 文件:
<tr><td>Link:</td><td><a href="https://www.google.com">www.google.com</a></td></tr>
基本上我想更进一步,在锚标签之间找到 www.google.com 并将其替换为“GOOGLE”。
我研究了 python 内置的“查找和替换”函数,并在正则表达式模块 (re.sub()) 中提出了替换函数。这可能不是最好的方法,我试图弄清楚是否有更好的功能/模块我应该研究。
python
for line in file:
newHTML.write(re.sub(var1,var2,line,flags=re.MULTILINE), end='')
newHTML.write(re.sub(var3,var4,line,flags=re.MULTILINE), end='')
我收到的错误是:
newHTML.write(re.sub(var1,var2,line,flags=re.MULTILINE), end='')
TypeError: write() takes no keyword arguments
如果我注释掉这段代码,程序的其余部分运行良好,尽管没有找到和替换这些变量。
也许 re.sub() 不适合 write()?
【问题讨论】:
-
write()不是print()也没有end=。而且它不会在末尾添加"\n"。 -
第一次编写 HTML 时不能输入正确的值吗?创建数据
Link:,www.google.com,GOOGLE并使用它来生成 HTML 可能会更容易。
标签: python