最近的一个小软件,遇到了一个问题就是需要把字符串转成数字,可字符串中有时候会出来特殊字符。所以只需要做一个转换函数才可以的。下面这个函数比较凑效。这里做一个笔记本吧。
测试字符串是否是数字:
# -*- coding: UTF-8 -*- # Filename : test.py # author by : www.runoob.com def is_number(s): try: float(s) return True except ValueError: pass return False # 测试字符串和数字 print(is_number('foo')) # False print(is_number('1')) # True print(is_number('1.3')) # True print(is_number('-1.37')) # True print(is_number('1e3')) # True
测试字符串是否是广义的数字:
# -*- coding: UTF-8 -*- # Filename : test.py # author by : www.runoob.com def is_number(s): try: float(s) return True except ValueError: pass try: import unicodedata unicodedata.numeric(s) return True except (TypeError, ValueError): pass return False # 测试字符串和数字 print(is_number('foo')) # False print(is_number('1')) # True print(is_number('1.3')) # True print(is_number('-1.37')) # True print(is_number('1e3')) # True # 测试 Unicode # 阿拉伯语 5 print(is_number(' ')) # True # 泰语 2 print(is_number('๒')) # True # 中文数字 print(is_number('四')) # True # 版权号 print(is_number('©')) # False
标签:return,数字,Python,number,print,字符串,False,True From: https://www.cnblogs.com/dylancao/p/16872596.html