這篇文章主要講解了“python怎么判斷一個變量是不是數(shù)字”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“python怎么判斷一個變量是不是數(shù)字”吧!
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計、做網(wǎng)站、魏縣網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、魏縣網(wǎng)絡(luò)營銷、魏縣企業(yè)策劃、魏縣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供魏縣建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:chinadenli.net
判斷一個變量是不是數(shù)字?
str_list1 = [1234, '134', '134.151', '-134','一二三', '正三四五', '負四五六', '正三點一四一五']str_list2 = ['-', '--13', '34..421', '.134']
類似str_list1內(nèi)部元素的變量都判為數(shù)字,類似str_list2內(nèi)部元素的變量都判為非數(shù)字!
看答案之前最好嘗試自己寫一下,寫完了再和我寫的對比一下:
def isnumber(str_number): # 判斷字符串是不是數(shù)字if type(str_number) is int or type(str_number) is float: # 如果參數(shù)是數(shù)字型或浮點型,返回Truereturn Trueif type(str_number) != str or len(str_number) < 1: # 如果參數(shù)不是字符串型或長度小于1,返回Falsereturn Falsesymbol1 = ('+', '-', '正', '負') # 正負號symbol2 = ('.', '點') # 小數(shù)點if str_number[0] in symbol1: # 如果首字符是符號,那么整個字符串去除符號str_number = str_number[1:]if len(str_number) < 1: # 如果去除符號后長度為0,判斷不是數(shù)字return Falseelif str_number[0] in symbol2: # 首字符不能為小數(shù)點return Falsenumber = ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '零', '一', '二', '三', '四', '五', '六', '七', '八', '九') # 匹配模板result = True # 預(yù)設(shè)結(jié)果是Truepoint_times = 0 # 小數(shù)點次數(shù)str_len = len(str_number) # 計算整個字符串長度for i in range(str_len): # 遍歷整個字符串if str_number[i] in symbol2: # 如果當(dāng)前字符是小數(shù)點point_times += 1 # 小數(shù)點次數(shù)+1if point_times > 1: # 小數(shù)點出現(xiàn)次數(shù)多于1個result = False # 判斷字符串不是數(shù)字breakelif str_number[i] not in number: # 如果當(dāng)前字符不在模板內(nèi)result = False # 判斷字符串不是數(shù)字breakreturn result str_list1 = [1234, '134', '134.151', '-134', '一二三', '正三四五', '負四五六', '正三點一四一五']str_list2 = ['-', '--13', '34..421', '.134']for i in str_list1:print(f"當(dāng)前參數(shù){i}{'是數(shù)字!' if isnumber(i) else '不是數(shù)字!'}")print('-'*50)for i in str_list2:ret = '是數(shù)字!' if isnumber(i) else '不是數(shù)字!'print(f"當(dāng)前參數(shù){i}{'是數(shù)字!' if isnumber(i) else '不是數(shù)字!'}")out:當(dāng)前參數(shù)1234是數(shù)字! 當(dāng)前參數(shù)134是數(shù)字! 當(dāng)前參數(shù)134.151是數(shù)字! 當(dāng)前參數(shù)-134是數(shù)字! 當(dāng)前參數(shù)一二三是數(shù)字! 當(dāng)前參數(shù)正三四五是數(shù)字! 當(dāng)前參數(shù)負四五六是數(shù)字! 當(dāng)前參數(shù)正三點一四一五是數(shù)字!--------------------------------------------------當(dāng)前參數(shù)-不是數(shù)字! 當(dāng)前參數(shù)--13不是數(shù)字! 當(dāng)前參數(shù)34..421不是數(shù)字! 當(dāng)前參數(shù).134不是數(shù)字!
感謝各位的閱讀,以上就是“python怎么判斷一個變量是不是數(shù)字”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對python怎么判斷一個變量是不是數(shù)字這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
當(dāng)前名稱:python怎么判斷一個變量是不是數(shù)字
當(dāng)前URL:http://chinadenli.net/article16/joisdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、小程序開發(fā)、網(wǎng)站改版、標簽優(yōu)化、動態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)