print [i for i in c if i not in b] 注:b為報表中輸出的酒店列表,C為酒店提供的列表,現在C為2865家,而報表中輸出的只有2842家。有23家沒有輸出,需要確認這23家是不是真的沒有price數據。
目前工作中客戶總是提出增加hotel列表的需求,測試時每次都需要抽查新增酒店是否增加,還要做全量酒店數的驗證,但由於生成ALL的CSV文件特別大,用EXCEL打不開,所以只能用python腳本讀取來統計報表中輸出的hotle數量。遇到了打開CSV時編碼格式的問題,用utf-8不行,之前驗證鍾點房時,是可以的,這次就不行,最后改用utf-16就可以了,但我還是不知道為什么,這次我統計的是hotelID,但輸出來的形如
b = [u'HOTEL_ID', u'15164071', u'808834', u'467288', u'430214', u'436167'] 這樣的酒店列表,處理一下就OK了
第一步:先把最前面的表頭u''HOTEL_ID'去掉, b.pop(0)
第二步:再用int函數就可以與EXCEL中提供的應行對比了。 c =[int(val) for val in b]
總之:編碼是我記遠的痛。555555