1樓:z伊凡
正則匹配法比較嚴謹一些,你說的數字有沒有條件限制?
下面是一些常用的判斷各種數字的正規表示式:
驗證數字:^[0-9]*$
驗證n位的數字:^\d$
驗證至少n位數字:^\d$
驗證m-n位的數字:^\d$
驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$驗證有兩位小數的正實數:^[0-9]+(.
[0-9])?$驗證有1-3位小數的正實數:^[0-9]+(.
[0-9])?$驗證非零的正整數:^\+?
[1-9][0-9]*$驗證非零的負整數:^\-[1-9][0-9]*$驗證非負整數(正整數 + 0) ^\d+$驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$確定後使用python的re模組來匹配正則寫個小例子:
import re
p1=re.compile('^[0-9]*$')number = p1.match(value)if number:
print "yes"
else:
print "no"
希望我的回答可以幫到你:-)
2樓:小鏡子
判定是否為數字方法一:
try:
float(s)
return true
exceptvalueerror:
pass
try:
importunicodedata
unicodedata.numeric(s)return true
except (typeerror
, valueerror):
pass
return false
方法二:普通十進位制正常處理
對於非十進位制還需要更復雜的方法,不過這裡不討論,只討論普通十進位制數的影響。
十進位制數格式一般有以下幾種(整數、小數、科學計數法):
+123 [符號位][數字]-123.123 [符號位][小數點][數字]+123e+123 [整數或小數][e或者d,大小寫皆可][整數]
3樓:
import stringnums = string.digitsdef check(a): if type(a) is not str:
return false else: for i in a: if i not in nums:
return false return true使用字串模組裡面的巨集定義digits,它定義了0到9等10個數字。迴圈判斷你給定的字串裡面的每個字元,如果發現其中一個字元不是數字就返回錯誤,如果遍歷完了都沒有發現不是數字的就返回正確
4樓:
方法有很多,你的具體應用情形是什麼?
是不是判斷使用者輸入的字元是否為數字,參考:
try:
input_num = float(input_str)except:
print 'not a number.'
5樓:章魚猛_張雨萌
str.isdigit()
是數字會顯示true
不是會顯示false
6樓:匿名使用者
'12'.isdigit()
python如何判斷輸入是字串還是數字
7樓:匿名使用者
def isnum(n):
try:
t=float(n)
return true
except:
return false
print(isnum('123'))
print(isnum('12.3'))
print(isnum('abc'))
8樓:匿名使用者
說明:python輸入的內容在內部全部為字串,所以要判斷這個字串是否為一個數字。大多法內部函式並不能對各種形式的資料做出正確判斷,例如isdigit()函式只能判斷字串是否為純資料組成對於負數則無效了。
所以可以使用float()來檢測,對各種數字的表示方法都有效果。
方法**:
#定義函式
def isnub(s):
try:
nb = float(s) #將字串轉換成數字成功則返回truereturn true
except valueerror as e:
return false #如果出現異常則返回false#測試print(isnub('123'))print(isnub('abc'))
print(isnub('123.123'))print(isnub('-123.123'))print(isnub('-1.609e-19'))測試結果如下:
true
false
true
true
true
9樓:水煮魚耐豆芽
s=input("please inupt string") print(s.isdigit()) #用isdigit函式判斷是否數字 print(s.isalpha()) #isalpha判斷是否字母 print(not (s.
isalpha() or s.isdigit()) and s.isalnum()) #isalnum判斷是否數字和字母的組合
js判斷某字串中是否存在一段字串
var settime 4 00 字串settime var i settime.indexof 如果settime包含 則 i 返回 在settime裡面的位置,否則返回 1 import org.apache.commons.lang.stringutils stringutils.contai...
判斷字串是否迴文(用free pascal解)
我說一下思路吧。首先資料範圍是100000 999999的話,只要迴圈 for i 100000 to 999999就可以了,這裡迴圈變數不要忘了要用longint 之後只要判斷素數和迴文數就可以了 可以用if 判斷迴文數 i false then flag false else if 判斷素數 i...
python如何去掉字串svalueseb中
你好 第一 如果都是這樣的形式,可以使用slide就是切片 第二 利用split函式以 分開字串,然後去掉空格,再組合。附上,總結的正規表示式 總結 匹配字串的開始。匹配字串的結尾。b 匹配一個單詞的邊界。d 匹配任意數字。d 匹配任意非數字字元。x?匹配一個可選的 x 字元 換言之,它匹配 1 次...