在接收raw_input方法後,判斷接收到的字串是否為數字
例如:str = raw_input("please input the number:")
if str.isdigit():
為true表示輸入的所有字元都是數字,否則,不是全部為數字
str為字串 str.isalnum() 所有字元都是數字或者字母 str.isalpha() 所有字元都是字母 str.isdigit() 所有字元都是數字 str.islower() 所有字元都是小寫 str.isupper() 所有字元都是大寫 str.istitle() 所有單詞都是首字母大寫,像標題 str.isspace() 所有字元都是空白字元、\t、\n、\r
上述的主要是針對整型的數字,但是對於浮點數來說就不適用了,那麼浮點數怎麼判斷呢,一直在糾結這個問題,為什麼非要區分整型和浮點數呢,既然都是參與運算的,全部適用浮點數不是一樣嗎,在得到結果後,直接轉換為int型不是一樣嗎,為什麼非要糾結在前期去判斷是否整型或者浮點數呢,有了這樣的思路,下面就好做了,例如:
我們可以通過異常來判斷,異常語法如下:
try: exception:
str = raw_input("please input the number:")
try: f = float(str) exception valueerror: print("輸入的不是數字!")
還有一種純粹判斷是否為浮點數的方法,使用正規表示式:
1.#引用re正則模組
import 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."
2. 關於這個正規表示式,解釋一下:
^[-+]?[0-9]+\.[0-9]+$
^表示以這個字元開頭,也就是以[-+]開頭,[-+]表示字元-或者+之一,
?表示0個或1個,也就是說符號是可選的。
同理[0-9]表示0到9的乙個數字,+表示1個或多個,也就是整數部分。
\.表示的是小數點,\是轉義字元因為.是特殊符號(匹配任意單個除\r\n之外的字元),
所以需要轉義。
小數部分同理,$表示字串以此結尾。
判斷Python輸入是否為數字
判斷user接收到的字串是否為數字 例如 user 78234 user.isdigit str.isdigit user 兩種寫法 為true表示輸入的所有字元都是數字,false表示不是數字或者不全部為數字 str.isalnum 所有字元都是數字或者字母 str.isalpha 所有字元都是字...
C 判斷使用者輸入是否為數字?
include include include using namespace std bool is number string str return true else return true void main int a 0 const char s cout 請輸入資料a string s...
c 判斷輸入textbox是否為數字
asp.net判斷輸入文字是否是數字 方案一 名稱 isnumberic 功能 判斷輸入的是否是數字 引數 string otext 源文字 返回值 bool true 是 false 否 public bool isnumberic string otext catch try catch方法 例...