Python中定義了string的一些內建方法,可以判斷字符串的組成元素。
如果 string 至少有一個字符並且所有字符都是字母或數字則返 回 True,否則返回 False |
|
如果 string 至少有一個字符並且所有字符都是字母則返回 True, 否則返回 False |
|
如果 string 只包含十進制數字則返回 True 否則返回 False. |
|
如果 string 只包含數字則返回 True 否則返回 False. |
|
如果 string 中包含至少一個區分大小寫的字符,並且所有這些(區分大小寫的)字符都是小寫,則返回 True,否則返回 False |
|
如果 string 中只包含數字字符,則返回 True,否則返回 False |
|
如果 string 中只包含空格,則返回 True,否則返回 False. |
|
如果 string 是標題化的(見 title())則返回 True,否則返回 False |
|
如果 string 中包含至少一個區分大小寫的字符,並且所有這些(區分大小寫的)字符都是大寫,則返回 True,否則返回 False |
但是對於浮點數來說並沒有對應的方法,可以嘗試通過異常處理來判斷:
str = raw_input("please input the number:") try: f = float(str) except ValueError: print("input is not a float!")
另外還可通過正則表達式來判斷:
import re #引用re正則模塊 float_number = str(input("Please input the number:")) value = re.compile(r'^[-+]?[0-9]+\.[0-9]+$') # 定義正則表達式 result = value.match(float_number) if result: print "Number is a float." else: print "Number is not a float."
^[-+]?[0-9]+\.[0-9]+$
^表示以后面這個字符開頭,也就是以[-+]開頭,[-+]表示字符-或者+之一,?表示0個或1個,也就是說符號-和+是可選的。
[0-9]表示0到9的一個數字,+表示1個或多個,也就是整數部分一個或多個數字。
\.表示的是小數點,\是轉義字符因為.是特殊符號,所以需要轉義。
小數部分同理,$表示字符串以前面的字符結尾,即小數部分一個或多個數字,並以數字結尾。