2017-10-13 70 views
-3
import re 
time = input() 
if re.match('^[1-2][0-9][:][0-9]{2}$',time): 
    print('Late') 
else: 
    print('Ok') 

我正在研究一個程序,其中會有多個定時(24小時制,如14:30,12:49等)由用戶給出(輸入範圍從4到9999)在同一行中,每行之間有一個空格。問題是他沒有給出輸入的數量。他只是打字,直到他完成。所以如何獲得高於10:00的時間點。從10:01開始說。在同一行中輸入多個輸入,直到用戶完成python爲止

我添加的代碼僅顯示時間是否高於10:00。這也只適用於單一輸入。我計算出如何提供多個輸入並運行它應該在一條線中輸入所有輸入

+0

你到目前爲止嘗試過什麼? – Neo

+0

以及我只設法讀取時間是否在10:00以上或以下到10:00。我知道如何使用split()在一行中輸入多個輸入。但不知道如何閱讀 –

+0

import re time = input() if re.match('^ [1-2] [0-9] [:] [0-9] {2} $',時間): print('Late') else: print('Ok') –

回答

0

您可以使用列表理解。

input().split將返回字符串列表。

[time for time in input.split() if re.match('^[1-2][0-9][:][0-9]{2}$',time)]將返回與RegEx匹配的input.split()的字符串列表。

len([time for time in input.split() if re.match('^[1-2][0-9][:][0-9]{2}$',time)])將返回這種字符串的數量。

+0

。但實際上我最近開始學習python。所以我不理解它。但它確實有效。 –

+0

實際上,閱讀關於列表理解和列表的一般信息。 – Neo

+0

好的。感謝你在這個 –

相關問題