2017-06-05 4 views
1

Hy!確率を計算するソフトウェアを作っています。 私の問題は、私たちがどんな種類のアイテムについて話しているのか聞いてみると、私は文法エラーです。Pythonでユーザー入力を読み込もうとしたときのNameError

# -*- coding: utf-8 -*- 
from __future__ import division 
from scipy.stats import hypergeom 
import matplotlib.pyplot as plt 
from operator import itemgetter 
from random import randint 
import scipy.special 
import math 
import random 
from scipy.stats import binom 

object = str(input("What kind of items are we talking about?")) 
population = int(input("How many " + object + "do we have?")) 

エラー:あなたはpython2を使用している場合

What kind of items are we talking about?car 
Traceback (most recent call last): 
    File "/Users/suhajdakrisztian/PycharmProjects/firsttrial/input.nemtudomanevet.py", line 12, in <module> 
    object = str(input("What kind of items are we talking about?")) 
    File "<string>", line 1, in <module> 
NameError: name 'car' is not defined 

Process finished with exit code 1 
+1

Shivaの回答から分かるように、inputはデフォルトでは文字列なので、最初の入力でstr()を呼び出す必要はありません。 – Actually

+1

ところで、変数名に 'object'を使わないでください。なぜなら、それは組み込みの' object'型を陰にするからです。 –

答えて

2

、あなたがraw_input機能を使用することをお勧めします。 input関数はユーザ入力をevalにしようとしますが、これは望ましくありません。

関連する問題