2015-01-17 3 views
-1

Я пытаюсь создать код, который вычисляет нормальную плотность, используя 3 числовых ввода. Я попытался запустить следующий код, но веб-сайт не получает входные данные и переходы к последнему комментарию: «Спасибо». Как я могу это исправить? Заранее спасибо!Получение числовых входов и вычисление

from django.shortcuts import render 
from django import forms 
from django.http import * 
from scipy.stats import norm 

class NF(forms.Form): 

    n1 = forms.FloatField(label = 'Input a Number') 
    n2 = forms.FloatField(label = 'Mean') 
    n3 = forms.FloatField(label = 'SD') 


def cal(request): 
    if request.method == 'POST': 
     form = NF(request.POST) 
     if form.is_valid(): 
      number = form.clean_data['n1'] 
      mean = form.clean_data['n2'] 
      sd = form.clean_data['n3'] 
      density = norm.pdf(number, mean, sd) 
      html= '<html><body>The density is %s.</body></html>' % density 

    return HttpResponse('Thanks!') 
+0

«сайт не получает входы» - что вы имеете в виду? Вы обнаружили, что данные формы являются «Нет»? Вы уверены, что правильно отправляете данные? – hichris123

+0

Я настоящий новичок, поэтому много не знаю. Что означает u, что «данные формы - это None»? –

+0

Ничего в Python означает, что ничего нет. Вы также хотели бы проверить, равна ли данных пустой строке, т. Е. '' "'. По данным формы, я имею в виду «число», «значение» и «sd». – hichris123

ответ

0

Я думаю, что это возможно потому, что вы не возвращаете то, что получаете, а только Спасибо.

Изменение последней строки к этому:

... 
      html= '<html><body>The density is %s.</body></html>' % density 

    return HttpResponse(html) 
... 
Смежные вопросы