1

Python bottle アプリケーションで post 経由で転送された 2 つの html フォーム値を追加しようとしていました。残念ながら、連結しているだけです。入力をintに変換しようとしましたが、「未処理の例外エラー」が発生しました....これが私のコードです

from bottle import get, post, request,default_app # or route
import math

@get('/login') # or @route('/login')
def login():
    return '''
        <form action="/login" method="post">
            Number1: <input name="num1" type="number" />
            Number2: <input name="num2" type="number" />
            <input value="Add" type="submit" />
        </form>
    '''

@post('/login') # or @route('/login', method='POST')
def do_login():

    num1 = request.forms.get('num1')
    num2 = request.forms.get('num2')

    return num1+num2
import os
from bottle import TEMPLATE_PATH
TEMPLATE_PATH.append(os.path.join(os.environ['OPENSHIFT_HOMEDIR'], 
    'runtime/repo/wsgi/views/')) 
application=default_app()

タイプすると、(int)num1+(int)num2 未処理の例外エラーが返されます..理由がわからない.. type(),float() 関数についても同様です。

4

2 に答える 2

1

戻り値を str に変換するだけでよいと思いますので、次を試してください。

return str(int(num1) + int(num2))

于 2013-10-13T12:01:12.340 に答える
0

試す:

return int(num1)+int(num2)

ではない:

return (int)num1+(int)num2
于 2013-10-12T18:44:02.950 に答える