31 lines
693 B
Python
31 lines
693 B
Python
import unicodedata
|
|
|
|
|
|
def blank(string):
|
|
"""
|
|
判断字符串是否为空或者纯空格
|
|
:param string: 字符串
|
|
:return: 字符串是否为空或者纯空格
|
|
"""
|
|
return not string or string.isspace()
|
|
|
|
|
|
def full_to_half(string):
|
|
"""
|
|
全角转半角
|
|
:param string: 字符串
|
|
:return: 半角字符串
|
|
"""
|
|
if not isinstance(string, str):
|
|
raise TypeError("全角转半角的输入必须是字符串类型")
|
|
|
|
if not string:
|
|
return string
|
|
|
|
half_string = ''.join([
|
|
unicodedata.normalize('NFKC', char) if unicodedata.east_asian_width(char) in ['F', 'W'] else char
|
|
for char in string
|
|
])
|
|
|
|
return half_string
|