2013-11-24 69 views
1

我正在將表單樣式GUI的輸入數據與文件中包含的信息進行匹配。不斷變化的條件數

我想利用能夠填寫一個/任何/所有的箱子中的文件進行匹配數

我想我正在尋找的是類似

if ((filled_boxes[0] == file[0]) and (filled_boxes[1] == file[1]) and .... 

但允許測距一些條件

回答

2

您可能正在尋找zip(),與all()相結合,以測試所有條件:

if all(box == f for box, f in zip(filled_boxes, file)): 

這裏zip()雙的文件和文件箱,環比每對,並all()回報True只有所有成對匹配。

什麼zip()all()快速演示做:

>>> zip([1, 2, 3], ['spam', 'ham', 'eggs']) 
[(1, 'spam'), (2, 'ham'), (3, 'eggs')] 
>>> all(i < 5 for i in range(5)) 
True 
>>> all(i < 5 for i in range(10)) 
False 

其中all()只需要測試足夠的發電機表達的確定有一個False值,它返回False爲好。

+0

我必須弄清楚如何以我需要的方式來實現它,但我想我愛你 – Jeff