python列表內的類型轉換
問題描述
大家好,我嘗試用下面的方法在一個存儲了unciode類型數字的列表內直接做int轉換,代碼和錯誤信息如下:
pass_list = [int(item) for item in data_list] Traceback (most recent call last): File 'C:/Projects/pycharm/query_mongo/query_mongo.py', line 183, in <module> verify_pass_id_in_plane(collect_name1, collect_name2) File 'C:/Projects/pycharm/query_mongo/query_mongo.py', line 123, in verify_pass_id_in_plane pass_list = [int(item) for item in data_list]ValueError: invalid literal for int() with base 10: ’’
data_list里保存的數據類似這樣, [u’149, u’150’], 我想得到一個[149,150]這樣的list, 用pycharm里用調試的時候沒有問題,直接運行就報上面的錯誤,請問要如何解決?謝謝
問題解答
回答1:報這個錯說明你的data_list存在不能轉換成int的值,比如空串或是None之類的,仔細檢查data_list的值
回答2:最好對int()對象類型進行檢查,例如通過字符串的isnumeric()方法檢測:
pass_list = [int(item) for item in data_list if item.isnumeric()]
相關文章:
1. sql語句 - mysql中關聯表查詢問題2. css - chrome下a標簽嵌套img 顯示會多個小箭頭?3. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變4. html - vue項目中用到了elementUI問題5. javascript - iframe 為什么加載網頁的時候滾動條這樣顯示?6. python - django models 為生成的html元素添加樣式。7. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。8. javascript - 有什么比較好的網頁版shell前端組件?9. mysql updtae追加數據sql語句10. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?
