我想将分数数据类型显示为瓶
index.py
# -*- coding:utf-8 -*-
from fractions import Fraction
from bottle import route, view
@route('/')
@view("index_template")
def index():
f = Fraction(3, 4)
return dict(type(f))
index.template
{{f}}
Apache错误日志
TypeError:'ABCMeta'对象不可迭代
环境
·Cent OS 6 ·Python 3.6 ·Apache 2.2 ·mod_wsgi的-4.5 ·瓶子0.13 ·Chrome 62
答案 0 :(得分:0)
只返回Fraction对象的字符串表示。如,
@route('/')
def index():
f = Fraction(3, 4)
return str(f)
另外(仅供参考):除非您在源代码中包含非ascii字符,否则不需要# -*- coding:utf-8 -*-
。
编辑:OP表示他/她想要返回Fraction对象的类型,而不是其值。在这种情况下,只需返回类型(作为字符串)。
@route('/')
def index():
f = Fraction(3, 4)
return str(type(f))
编辑#2 :OP是(我猜是)使用浏览器进行测试,并且响应呈现为html,由于页面显示为空白,因此混淆了OP。为了解决这个问题,我建议你回复一个文本回复:
from bottle import response
@route('/')
def index():
f = Fraction(3, 4)
response.content_type = 'text/plain'
return str(type(f))