TypeError: expected a character buffer object

作者在使用Quixote框架输出HTML时遇到错误,并通过调整代码解决了问题。主要是将直接输出字符串改为使用htmltext处理后再输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个错误弄了一个下午才搞定!

        for row in rows:
            
print row
            
'<tr>'
            
'<td>%s</td>' % row[2]
            
'<td>%s</td>' % row[1]
            
'<td>%s</td>' % row[3].replace("/r/n""<br>")
            
'</tr>'

改为

        for row in rows:
            
print row
            
'<tr>'
            
'<td>%s</td>' % row[2]
            
'<td>%s</td>' % row[1]
            
'<td>%s</td>' % htmltext(row[3]).replace("/r/n""<br>")
            
'</tr>'

不报错了。

解决的过程,试着打印类型:

context = "I'm a string"
print type(context)
print type(row[3])

结果是:

<class 'quixote.html._py_htmltext.htmltext'>
<type 'str'>


是Quixote的原因?看来PTL还得仔细看看。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值