国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python判斷字符串是否為字母或者數(shù)字(浮點(diǎn)數(shù))的多種方法

2020-02-15 22:39:55
字體:
供稿:網(wǎng)友

str為字符串s為字符串

str.isalnum() 所有字符都是數(shù)字或者字母

str.isalpha() 所有字符都是字母

str.isdigit() 所有字符都是數(shù)字

str.isspace() 所有字符都是空白字符、t、n、r

檢查字符串是數(shù)字/浮點(diǎn)數(shù)方法

float部分

>> float('Nan')nan>> float('Nan')nan>> float('nan')nan>> float('INF')inf>> float('inf')inf>> float('-INF')inf>> float('-inf')inf

第一種:最簡單

def is_number(str):  try:    # 因?yàn)槭褂胒loat有一個(gè)例外是'NaN'    if str=='NaN':      return False    float(str)    return True  except ValueError:    return Falsefloat例外示例 >>> float('NaN') nan

使用complex()

def is_number(s):  try:    complex(s) # for int, long, float and complex  except ValueError:    return False  return True

綜合1

def is_number(s):  try:    float(s) # for int, long and float  except ValueError:    try:      complex(s) # for complex    except ValueError:      return False  return True

綜合2-還是無法完全識(shí)別

def is_number(n):  is_number = True  try:    num = float(n)    # 檢查 "nan"     is_number = num == num  # 或者使用 `math.isnan(num)`  except ValueError:    is_number = False  return is_number>>> is_number('Nan')  False>>> is_number('nan') False>>> is_number('123') True>>> is_number('-123') True>>> is_number('-1.12')True>>> is_number('abc') False>>> is_number('inf') True

第二種:只能判斷是整數(shù)

使用isnumeric()

# str必須是uniconde模式>>> str = u"345">>> str.isnumeric()Truehttp://www.tutorialspoint.com/python/string_isnumeric.htmhttp://docs.python.org/2/howt...

使用isdigit()

https://docs.python.org/2/lib...>>> str = "11">>> print str.isdigit()True>>> str = "3.14">>> print str.isdigit()False>>> str = "aaa">>> print str.isdigit()False

使用int()

def is_int(str):  try:    int(str)    return True  except ValueError:    return False

第三種:使用正則(最安全方法)

import redef is_number(num):  pattern = re.compile(r'^[-+]?[-0-9]/d*/./d*|[-+]?/.?[0-9]/d*$')  result = pattern.match(num)  if result:    return True  else:    return False>>>: is_number('1')True>>>: is_number('111')True>>>: is_number('11.1')True>>>: is_number('-11.1')True>>>: is_number('inf')False>>>: is_number('-inf')False

總結(jié)

以上所述是小編給大家介紹的Python判斷字符串是否為字母或者數(shù)字(浮點(diǎn)數(shù))的多種方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林站長站網(wǎng)站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 忻州市| 平昌县| 光泽县| 麟游县| 襄汾县| 太康县| 隆德县| 阿勒泰市| 定安县| 上犹县| 延川县| 广州市| 西昌市| 甘孜县| 美姑县| 大埔县| 广丰县| 富阳市| 广西| 北碚区| 罗田县| 四子王旗| 定襄县| 临桂县| 富锦市| 那曲县| 浦北县| 剑河县| 房产| 上虞市| 沭阳县| 桦川县| 黄浦区| 博野县| 天长市| 屯留县| 离岛区| 黎川县| 康马县| 涞源县| 永新县|