1. 判断变量是字节
# 判断两个类型是否相同,则推荐用isinstance()
a = b'1234455'
isinstance(a, (bytes, bytearray)) # true
2. 判断变量是字符串
# type()查询括号中的内容的数据类型
a = '1234455'
isinstance(a, str) # true
type(a) # str
3. 判断字符串是数字
data = '123123'
# isdigit() 方法是 Python 中字符串对象的内置方法,可以判断一个字符串是否由数字字符组成
data.isdigit() # true
# isnumeric() 方法是 Python 中字符串对象的内置方法,可以判断一个字符串是否为数字字符,包括阿拉伯数字、罗马数字、汉字数字等
data.isnumeric() # true
# isdecimal() 方法是 Python 中字符串对象的内置方法,可以判断一个字符串是否为十进制数字字符
data.isdecimal() # true
# 正则表达式
import re
def is_number(string):
pattern = re.compile(r'^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$')
return bool(pattern.match(string))
print(is_number(data))