我正在使用Python的HTML应用程序。我通常使用%
符号表示我正在使用Python元素,之前从未遇到过问题。
现在,我正在使用一些表格,我试图用%
符号控制它们的大小。所以现在Python没有显示Python元素。
以下是一些解释自己的代码:
<table width="90%">
<tr>
<td width="60%">HELLO</td>
<td width="40%">GOOD BYE</td>
</tr>
</table>
<input type="button" value="BUTTON" onclick="function(%s)" /> ''' % variable
我所说的错误
不支持的格式字符'“'(0x22)在索引19”
引用%s
onclick=function(%s)
字符串
有人知道表中的%
符号是否会影响Python或类似的东西吗?
答案 0 :(得分:8)
你需要在python字符串中将'%'转义为'%%'。您获得的错误消息可能与其他百分号有关。如果你只在字符串中放入单个百分号,那么python认为它后面会跟一个格式字符,并会尝试在那里进行变量替换。
在你的情况下你应该:
'''
....
<table width="90%%">
<tr>
<td width="60%%">HELLO</td>
<td width="40%%">GOOD BYE</td>
</tr>
</table>
<input type="button" value="BUTTON" onclick="function(%s)" /> ''' % variable
答案 1 :(得分:3)
在较新的Python(例如,2.6或更高版本)中,您可以使用.format()
方法。你不需要逃避百分号:
s = '''<table width="90%">
<tr>
<td width="60%">HELLO</td>
<td width="40%">GOOD BYE</td>
</tr>
</table>
<input type="button" value="BUTTON" onclick="function({funcarg})" /> '''
s.format(**{'funcarg': 'return'})