python-10.菜鸟教程-6
程序员文章站
2022-03-24 15:57:44
...
Python3 isnumeric()方法
描述
isnumeric() 方法检测字符串是否只由数字组成,数字可以是: Unicode 数字,全角数字(双字节),罗马数字,汉字数字。
指数类似 ² 与分数类似 ½ 也属于数字。
# s = '½'
s = '\u00BD'
语法
isnumeric()方法语法:
str.isnumeric()
参数
- 无。
返回值
如果字符串中只包含数字字符,则返回 True,否则返回 False
实例
以下实例展示了 isnumeric() 方法的实例:
#!/usr/bin/python3
str = "runoob2016"
print (str.isnumeric())
str = "23443434"
print (str.isnumeric())
以上实例输出结果如下:
False
True
Unicode 数字:
#!/usr/bin/python3
# s = '²3455'
s = '\u00B23455'
print(s.isnumeric())
# s = '½'
s = '\u00BD'
print(s.isnumeric())
a = "\u0030" # unicode for 0
print(a.isnumeric())
b = "\u00B2" # unicode for ²
print(b.isnumeric())
c = "10km2"
print(c.isnumeric())
以上实例输出结果如下:
True
True
True
True
False
MEMO
str.isdecimal () 与str.isdigit()的区别
str.isdecimal() 函数只对十进制数返回 True,同时函数 str.isdigit() 对其他 unicode 支持的字符返回 True。
详细的内容可以使用以下代码输出:
import itertools
line = '-' * 37
print(line)
print("| № | isdigit | isdecimal | chr")
print(line)
for number in itertools.chain(range(1000), range(4969, 4978), range(8304, 11000)):
char = chr(number)
if char.isdigit() or char.isdecimal():
print('| {0:>6} | {1:^7} | {2:^9} | {3:3} '.format(
number,
'+' if char.isdigit() else '-',
'+' if char.isdecimal() else '-',
char
)
)
输出结果如下
-------------------------------------
| № | isdigit | isdecimal | chr
-------------------------------------
| 48 | + | + | 0
| 49 | + | + | 1
| 50 | + | + | 2
| 51 | + | + | 3
| 52 | + | + | 4
| 53 | + | + | 5
| 54 | + | + | 6
| 55 | + | + | 7
| 56 | + | + | 8
| 57 | + | + | 9
| 178 | + | - | ²
| 179 | + | - | ³
| 185 | + | - | ¹
| 4969 | + | - | ፩
| 4970 | + | - | ፪
| 4971 | + | - | ፫
| 4972 | + | - | ፬
| 4973 | + | - | ፭
| 4974 | + | - | ፮
| 4975 | + | - | ፯
| 4976 | + | - | ፰
| 4977 | + | - | ፱
| 8304 | + | - | ⁰
| 8308 | + | - | ⁴
| 8309 | + | - | ⁵
| 8310 | + | - | ⁶
| 8311 | + | - | ⁷
| 8312 | + | - | ⁸
| 8313 | + | - | ⁹
| 8320 | + | - | ₀
| 8321 | + | - | ₁
| 8322 | + | - | ₂
| 8323 | + | - | ₃
| 8324 | + | - | ₄
| 8325 | + | - | ₅
| 8326 | + | - | ₆
| 8327 | + | - | ₇
| 8328 | + | - | ₈
| 8329 | + | - | ₉
| 9312 | + | - | ①
| 9313 | + | - | ②
| 9314 | + | - | ③
| 9315 | + | - | ④
| 9316 | + | - | ⑤
| 9317 | + | - | ⑥
| 9318 | + | - | ⑦
| 9319 | + | - | ⑧
| 9320 | + | - | ⑨
| 9332 | + | - | ⑴
| 9333 | + | - | ⑵
| 9334 | + | - | ⑶
| 9335 | + | - | ⑷
| 9336 | + | - | ⑸
| 9337 | + | - | ⑹
| 9338 | + | - | ⑺
| 9339 | + | - | ⑻
| 9340 | + | - | ⑼
| 9352 | + | - | ⒈
| 9353 | + | - | ⒉
| 9354 | + | - | ⒊
| 9355 | + | - | ⒋
| 9356 | + | - | ⒌
| 9357 | + | - | ⒍
| 9358 | + | - | ⒎
| 9359 | + | - | ⒏
| 9360 | + | - | ⒐
| 9450 | + | - | ⓪
| 9461 | + | - | ⓵
| 9462 | + | - | ⓶
| 9463 | + | - | ⓷
| 9464 | + | - | ⓸
| 9465 | + | - | ⓹
| 9466 | + | - | ⓺
| 9467 | + | - | ⓻
| 9468 | + | - | ⓼
| 9469 | + | - | ⓽
| 9471 | + | - | ⓿
| 10102 | + | - | ❶
| 10103 | + | - | ❷
| 10104 | + | - | ❸
| 10105 | + | - | ❹
| 10106 | + | - | ❺
| 10107 | + | - | ❻
| 10108 | + | - | ❼
| 10109 | + | - | ❽
| 10110 | + | - | ❾
| 10112 | + | - | ➀
| 10113 | + | - | ➁
| 10114 | + | - | ➂
| 10115 | + | - | ➃
| 10116 | + | - | ➄
| 10117 | + | - | ➅
| 10118 | + | - | ➆
| 10119 | + | - | ➇
| 10120 | + | - | ➈
| 10122 | + | - | ➊
| 10123 | + | - | ➋
| 10124 | + | - | ➌
| 10125 | + | - | ➍
| 10126 | + | - | ➎
| 10127 | + | - | ➏
| 10128 | + | - | ➐
| 10129 | + | - | ➑
| 10130 | + | - | ➒
s.isdigit、isdecimal 和 s.isnumeric 区别
isdigit()
True: Unicode数字,byte数字(单字节),全角数字(双字节)
False: 汉字数字,罗马数字,小数
Error: 无
isdecimal()
True: Unicode数字,,全角数字(双字节)
False: 罗马数字,汉字数字,小数
Error: byte数字(单字节)
isnumeric()
True: Unicode 数字,全角数字(双字节),汉字数字
False: 小数,罗马数字
Error: byte数字(单字节)
num = "1" # unicode
num.isdigit() # True
num.isdecimal() # True
num.isnumeric() # True
num = "1" # 全角
num.isdigit() # True
num.isdecimal() # True
num.isnumeric() # True
num = b"1" # byte
num.isdigit() # True
num.isdecimal() # AttributeError 'bytes' object has no attribute 'isdecimal'
num.isnumeric() # AttributeError 'bytes' object has no attribute 'isnumeric'
num = "IV" # 罗马数字
num.isdigit() # False
num.isdecimal() # False
num.isnumeric() # False
num = "四" # 汉字
num.isdigit() # False
num.isdecimal() # False
num.isnumeric() # True
num = "1" # unicode
num.isdigit() # True
num.isdecimal() # True
num.isnumeric() # True
print(num.isdigit())
print(num.isdecimal())
print(num.isnumeric())
num = "1" # 全角
num.isdigit() # True
num.isdecimal() # True
num.isnumeric() # True
print(num.isdigit())
print(num.isdecimal())
print(num.isnumeric())
num = b"1" # byte
num.isdigit() # True
print(num.isdigit())
num = "IV" # 罗马数字
num.isdigit() # False
num.isdecimal() # False
num.isnumeric() # False
print(num.isdigit())
print(num.isdecimal())
print(num.isnumeric())
num = "四" # 汉字
num.isdigit() # False
num.isdecimal() # False
num.isnumeric() # True
print(num.isdigit())
print(num.isdecimal())
print(num.isnumeric())
上一篇: jsp的四大作用域是什么
推荐阅读
-
神舟战神t6ti笔记本如何安装win7系统 神舟战神t6ti笔记本安装win7系统图文教程
-
ae cs6安装后怎么汉化 After Effects CS6中文汉化图文详细教程
-
菜鸟js教程(javascript基础知识总结)
-
CATIA2018怎么安装?CATIA Composer R2018 v5-6R安装破解详细教程
-
CATIA怎么安装?CATIA P3 v5-6R 2017安装+破解方法详细图文教程
-
edius6怎么制作画中画效果?edius画中画的图文教程
-
hadoop菜鸟教程(hadoop零基础入门)
-
ajax菜鸟教程(jq请求ajax的方法)
-
html5 Canvas画图教程(6)—canvas里画曲线之arcTo方法
-
jq轮播图代码左右切换(js轮播图菜鸟教程)