python数字判断规则_判断Python输入是否为数字、字符(包括正则表达式)-阿里云开发者社区...
當鍵入字符串時候,我們自己就可以判斷了!
一:我們在程序把輸入的數字當字符串處理
import re
print("我現在要寫一個文件數字猜游戲數字游戲:")
temp=input("請你輸入一個數字,猜對了有獎,猜錯了,沒有關系:")
guess=str(temp)
while guess != '8':
temp=input("還沒有猜對,繼續猜猜看,不要放棄:")
guess=str(temp)
if guess == '8':
print("你猜對了!")
else:
if guess > '8':
print("數字猜大了!")
else:
print("數字猜小了")
二:用isdigit()的方法
str=input("請輸入數字:")
if str.isdigit():
print("對了,你輸入的是數字")
else:
print("你輸入的不是數字")
三:兩種計算長度的方法
第一種:利用str函數將數字轉化成字符串,再利用len函數判斷位長。
a=Int(raw_input("the number you want type in:")
b=len(str(a))
print b
第二種:除數判斷
c=0
a=int(raw_input("the number you want type in:"))
while a!=0:
a=a/10
c +=1
print c
四:在接收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:
{statements}
exception: {Exception Objects}
{statements}
str = raw_input(“please input the number:”)
try:
f = float(str)
exception ValueError:
print(“輸入的不是數字!”)
==========================================================
還有一種純粹判斷是否為浮點數的方法,使用正則表達式:
引用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."
關于這個正則表達式,解釋一下:
^[-+]?[0-9]+.[0-9]+$
^表示以這個字符開頭,也就是以[-+]開頭,[-+]表示字符-或者+之一,
?表示0個或1個,也就是說符號是可選的。
同理[0-9]表示0到9的一個數字,+表示1個或多個,也就是整數部分。
.表示的是小數點,\是轉義字符因為.是特殊符號(匹配任意單個除\r\n之外的字符),
所以需要轉義。
小數部分同理,$表示字符串以此結尾。
正則用得也不多,有錯誤的地方請大家指正。
總結
以上是生活随笔為你收集整理的python数字判断规则_判断Python输入是否为数字、字符(包括正则表达式)-阿里云开发者社区...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享五个微信实用小技巧分享五个微信实用小
- 下一篇: 酒店用品包括