python中取兩個列表中不同的元素


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 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM