怎么把空字符串去掉_Python知识点字符串转整数需注意
生活随笔
收集整理的這篇文章主要介紹了
怎么把空字符串去掉_Python知识点字符串转整数需注意
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
↑↑↑關注后"星標"簡說Python人人都可以簡單入門Python、爬蟲、數(shù)據(jù)分析簡說Python嚴選?
來源:簡說Python ?? 作者:老表
One?old?watch,?like?brief python大家好,我是老表~Python知識點系列,學習了記得點贊、留言、轉發(fā),三連哦~字符串轉整數(shù)需注意
問題源自我做阿里云天池Docker練習賽時(點擊查看),讀取num_list.csv數(shù)據(jù)后發(fā)現(xiàn)列表里的每個元素是字符串,所以需要先轉化為整數(shù),然后才能進行求和和排序,提交代碼時遇到下面問題:
%?Total?%?Received?%?Xferd?Average?Speed?Time?Time?Time?CurrentDload?Upload?Total?Spent?Left?Speed
100?145?100?45?100?100?4?9?0:00:11?0:00:10?0:00:01?0
Traceback?(most?recent?call?last):
File?"hello_world.py",?line?14,?in?
tc_list?=?[int(i)?for?i?in?tc_list]
File?"hello_world.py",?line?14,?in?
tc_list?=?[int(i)?for?i?in?tc_list]
ValueError:?invalid?literal?for?int()?with?base?10:?''
{"code":"SUCCESS","data":{"returnCode":true}}
倒數(shù)第二行是關鍵,意思是說''不能被轉化為整數(shù)數(shù)據(jù)。
ValueError:?invalid?literal?for?int()?with?base?10:?''所以在對列表進行處理時,需要提前去掉空字符串或者非純數(shù)字組成的字符串,處理方法如下:
#?如果確定數(shù)據(jù)為整數(shù),可以直接用isdigit()函數(shù)#?1、數(shù)據(jù)為整數(shù),不帶正負號
str1.isdigit()
#?2、數(shù)據(jù)為整數(shù),帶正負號
if?str1[0]?in?['-',?'+']:??
????if?str1[1:].isdigit():
????????return?int(str1)
????????
#?3、如果為浮點型,可以寫一個函數(shù)
def?is_number(str1):
????try:
????????float(str1)????#?直接轉化,為float,看報不報錯
????except?ValueError:??#?如果報錯,說明不是數(shù)值類型
????????return?False
????return?True
list1?=?['1',?'2',?'']
#?轉化為數(shù)值類型,并去除非數(shù)值類型字符串
list2?=?[float(i)?for?i?in?list1?if?is_number(i)]
在Docker入門賽事中,由于知道數(shù)據(jù)表中的數(shù)據(jù)都為整數(shù),所以可以直接這樣處理:
tc_list?=?[int(i)?for?i?in?tc_list?if?i?!=?'']簡說Java長按掃碼關注,一起學Java簡說Python長按掃碼關注,一起學Python------------------如果覺得文章有點用的話,請毫不留情地素質三連吧,分享、點贊、在看、收藏,我不挑,因為這將是我寫作更多優(yōu)質文章的最強動力。 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結
以上是生活随笔為你收集整理的怎么把空字符串去掉_Python知识点字符串转整数需注意的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于坚强励志的句子121个
- 下一篇: python自然场景文字识别_chine