python学习-综合练习二(整数和浮点数判断奇偶、质数判断)
文章目錄
- 判斷數(shù)字
- 判斷質(zhì)數(shù)
說明:本篇博文的知識(shí)點(diǎn)大部分來自 Python3 實(shí)例
判斷數(shù)字
判斷數(shù)字可以使用:
str1 = '123'def isNum(s):try:import unicodedataunicodedata.numeric(s)print(True)except(TypeError, ValueError):print(False)isNum(str1) print(str1.isdigit()) print(str1.isnumeric()) print(isinstance(str1, int))我發(fā)現(xiàn)在python里面,不少函數(shù)調(diào)用,編譯就會(huì)報(bào)錯(cuò),需要使用try包起來。
像unicodedata.numeric(s)就是,如果不用try包起來,傳入?yún)?shù)類型不對(duì),編譯就報(bào)錯(cuò)了。
用isdigit() 和 isnumeric()來判斷字符串是否只由字符串組成。
不過isnumeric() 只針對(duì)unicode對(duì)象,這個(gè)大家使用時(shí)需要注意。
然后我還發(fā)現(xiàn)一個(gè)很簡便的判斷類型的方法:
直接對(duì)輸入的數(shù)值進(jìn)行強(qiáng)制類型轉(zhuǎn)換,轉(zhuǎn)成int,然后使用try包起來,如果進(jìn)入except,則表示輸入的不是純整數(shù)。
為了判斷輸入的數(shù)值是否是奇偶數(shù),并且整數(shù)和小數(shù)都需要判斷,這里使用try來處理,是我搜尋了好久,最直接,也是最簡單的方式了。
然后本示例代碼里面,還有一個(gè)很有意思的地方,在format里面,可以使用條件判斷拼接的字符串。
int3 = 10 print('{} 是 '.format(int3) + ('偶數(shù).' if int3 % 2 == 0 else '奇數(shù).'))這里的寫法也是很新奇的。
'偶數(shù).' if int3 % 2 == 0 else '奇數(shù).'大家以后也可以使用這種方式簡化代碼。
判斷質(zhì)數(shù)
try:num = int(input("請(qǐng)輸入一個(gè)數(shù)字: "))if num > 1:for i in range(2, num):if (num % i) == 0:print(num, "不是質(zhì)數(shù)")print(i, "乘于", num // i, "是", num)breakelse:print(num, "是質(zhì)數(shù)")else:print(num, "不是質(zhì)數(shù)") except ValueError:print("輸入的不是整數(shù)!")首先對(duì)輸入類型進(jìn)行強(qiáng)轉(zhuǎn),使用try保護(hù),然后循環(huán)取余,除了1和本身,某個(gè)數(shù)值能整除,那就說明不是質(zhì)數(shù)。
運(yùn)行結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的python学习-综合练习二(整数和浮点数判断奇偶、质数判断)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小彭汽车向小鹏汽车道歉:盘点那些神级模仿
- 下一篇: 998的比亚迪秦PLUS DM-i多能跑