2017-02-15 24 views
-2

如果我的問題很愚蠢(我幾周前剛剛開始學習Python並且它是我的第一個編程語言),您好和對不起,但在這裏它是反正。 我想知道是否以及如何讓Python理解一系列數字如何繼續?對於我目前的計劃,我有這樣一行:如何讓Python理解一系列數字如何繼續

elif (inimeste_arv/kohtade_arv) in (1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0): 

現在,我希望它明白,它一直由相同的含義會無限期(10.0,11.0,12.0等),因爲我不能手動輸入這個ELIF語句需要的每個數字。 有沒有辦法做到這一點,或者它不可能?

感謝您的幫助!

+2

您是否希望尋求如果'(inimeste_arv/kohtade_arv)'有一個小數部分?如果是這樣:看看[modf](https://docs.python.org/2/library/math.html#math.modf) – dawg

+0

操作'(inimeste_arv/kohtade_arv)'的結果必須是_int_,但是當分開這些數字時,它給了我一個_float_(例如1.0,2.0等)。但是,如果我在這個操作的前面添加int(),它也會使_float_s變成_int_,但是我的程序然後無法正常運行(它的意思是隻允許傳遞整數,而不是_float_ s)。如果這個程序更容易理解,我可以發佈這個程序的全部內容 - 這是一個程序,你可以在一輛公共汽車上輸入一定數量的乘客和座位,並告訴你需要多少輛這樣的公共汽車,最後一個。 – Harli17

+0

pastebin.com/hrpJjhiY 這是在愛沙尼亞語,我可以爲你翻譯它,如果它使它更容易。 請注意,它只是我的_elif_語句的一部分,它不是我的完整程序;如果你也想這樣,我可以爲你提供更好的理解。 inimeste_arv =人數; kohtade_arv =座位數量; Viimases bussis inimesi =最後一班公交車上的人數 – Harli17

回答

0

嘗試

elif (inimeste_arv/kohtade_arv) in map(float, range(1, number)): 

其中numbermax value + 1

+0

感謝Python的國王!你應該得到一個帶有這種說法的T恤。 – imriqwe

-1

,如果你想看看分工的結果是整個數字,您可以使用%操作。 Try:

elif (inimeste_arv % kohtade_arv) == 0: 
0

總是讓電腦爲你打字。我想我們需要更多的信息來爲你找出一個確切的答案,但是我對你所得到的結果有一些猜測。

我可以從你的例子中推測出的一種可能性是你想知道你的結果是否是整數。爲了測試,你可以使用模運算符(%),它給你的除法運算的餘數:

124 % 5 
Out: 4 
125 % 5 
Out: 0 

所以,如果你(inimeste_arv/kohtade_arv)的結果爲0,你就知道了一個整數。

另一種可能性是你想知道它是否在一個特定的數字模式。對於一個簡單的模式,你可以使用範圍:

range(0, 125, 25) 
Out: [0, 25, 50, 75, 100] 

裏面確實有一個有限的結束,但仍然爲您節省大量的輸入。對於更復雜的模式,你可能已經在列表內涵,這是非常強大的,但可以爲新的程序員是不直觀讀了起來:

[i**2 for i in xrange(0, 6)] 
Out: [0, 1, 4, 9, 16, 25]