2014-09-28 110 views
-5

我有兩個問題。Python,輸入和raw_input

  1. 是什麼input和蟒蛇raw_input區別?

  2. *什麼是elif以及我可以在哪裏使用它。

+2

請限制您的帖子只有*一個問題*。你的第一個問題已經在Stack Overflow上得到了解答:['input \'和'raw \ _input \'之間的區別](http://stackoverflow.com/q/3800846)。你的第二個問題完全不清楚,但也許[elif和VS如果](http://stackoverflow.com/q/23230044)在這裏有幫助。 – 2014-09-28 10:28:36

回答

-2

Rly ..? :o 我可以嘗試.. ..first:簡單 - 輸入通常用於數字輸入 - 整數,是的raw_input文本 ..second:您可以使用elif的if和else語句..

「之間」
if (i == 0) : 
    print "zero" 
elif (i == 1): 
    print "one" 
else: 
    print "another number" 
1

input() vs raw_input()在鏈接above中解釋。
大部分情況下,您都希望在Python 3中使用raw_input(),在Python 3中使用input(),它們彼此相同,並且更安全。
在Python 2中使用input()允許輸入爲可能執行任何操作的代碼。

ifelifelse是在您可能期待幾種不同類型的數據時控制程序流的方法。想象一下,你創建一個猜謎遊戲如下:

number = 20 
guess = int(raw_input("Try to guess the number: ")) 
if guess == number: 
    print "Wow, you actually guessed the number..." 
if abs(guess - number) <= number * .25: 
    print "You're very close!" 

,有人設法猜20的結果是

"Wow, you actually guessed the number..." 
"You're very close!" 

但你並不想告訴的人他們是非常密切的,如果他們猜到了,這就是爲什麼elif有用。 elifelse if的縮寫,意思是隻有在上述條件失敗時纔會運行。因此,我們把上面的ONLY改變ifelif

number = 20 
guess = int(raw_input("Try to guess the number: ")) 
if guess == number: 
    print "Wow, you actually guessed the number..." 
elif abs(guess - number) <= number * .25: 
    print "You're very close!" 

現在"You're very close!"纔會觸發,如果他們沒有猜對正確的號碼,首先,這是期望的行爲。 else像你可能猜到的一樣,抓住了其他的一切。我們可以將其添加到我們的程序中,如下所示:

number = 20 
guess = int(raw_input("Try to guess the number: ")) 
if guess == number: 
    print "Wow, you actually guessed the number..." 
elif abs(guess - number) <= number * .25: 
    print "You're very close!" 
else: 
    print "You are the worst guesser!" 

現在我們的猜測遊戲已經完成。如果用戶猜測正確,則只打印一行。如果他們仔細猜測,只打印一行。如果他們猜得很遠,只打印一行。