0
나는 아주 간단한 코드가 - 임은 더 나은 솔루션 내 경우를 찾고 : 내가 가진 : - 2 입력 텍스트 + 버튼Python/FLASK - html 형식의 문자열을 반환합니다. 번호가 포함되어 있는지 확인하는 방법은 무엇입니까?
입력 양식을 제출 항상 문자열로 텍스트를 반환합니다. 은 숫자가 (및 숫자가 아닌 경우 - "오류"표시)을 전달하고, 입력의 텍스트가 인 목록에없는 경우 목록의 모든 문자를 수집하고 확인 문 을 전달하는 더 좋은 해결책을 알고 있습니까?
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route("/licz/", methods=['GET'])
def search():
licz1 = request.args.get('liczba1')
licz2 = request.args.get('liczba2')
notnumbers = ['q','w','e','r','t','y']
if licz1 and licz2 != None:
if licz1 not in notnumbers:
sumaliczenia = int(licz1) + int(licz2)
return render_template('liczenie.html', suma=sumaliczenia)
else:
sumaliczenia = "error"
return render_template('liczenie.html', suma=sumaliczenia)
else:
return render_template('liczenie.html')
app.run(debug=True)
템플릿 코드 (아래 주석에서) : 당신은 그냥 int로 사용자의 입력을 캐스팅해야 할 수
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Formularz</title>
</head>
<body> Result is {{ suma }}
<form action="/licz/" method="get">
<input type="text" name="liczba1">
<input type="text" name="liczba2"> <button type="submit">Send</button>
</form>
</body>
</html>
아니요, 입력 텍스트가 항상 int가 아닌 int를 반환하기 때문에 중복되지 않습니다. – Kris
내가보기에 다른 옵션이 있습니다 : (1) https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/처럼'type = "number"를 사용하는 HTML을 통해 숫자 (CSS를 사용하여 입력 요소 안의 화살표를 숨길 수 있음), (2) 파이썬 안에서 try/except를 사용하여 데이터를 int로 변환, (3) 정규 표현식을 사용하여 문자열 내부에서 int를 검색, 모든 숫자 목록'0 ... 9' – albert
템플릿 코드를 제공해주십시오. – albert