Python判断字符串是否为字母或者数字(浮点数)的多种方法


Posted in Python onAugust 03, 2018

str为字符串s为字符串

str.isalnum() 所有字符都是数字或者字母

str.isalpha() 所有字符都是字母

str.isdigit() 所有字符都是数字

str.isspace() 所有字符都是空白字符、t、n、r

检查字符串是数字/浮点数方法

float部分

>> float('Nan')
nan
>> float('Nan')
nan
>> float('nan')
nan
>> float('INF')
inf
>> float('inf')
inf
>> float('-INF')
inf
>> float('-inf')
inf

第一种:最简单

def is_number(str):
  try:
    # 因为使用float有一个例外是'NaN'
    if str=='NaN':
      return False
    float(str)
    return True
  except ValueError:
    return False
float例外示例
 >>> float('NaN')
 nan

使用complex()

def is_number(s):
  try:
    complex(s) # for int, long, float and complex
  except ValueError:
    return False
  return True

综合1

def is_number(s):
  try:
    float(s) # for int, long and float
  except ValueError:
    try:
      complex(s) # for complex
    except ValueError:
      return False
  return True

综合2-还是无法完全识别

def is_number(n):
  is_number = True
  try:
    num = float(n)
    # 检查 "nan" 
    is_number = num == num  # 或者使用 `math.isnan(num)`
  except ValueError:
    is_number = False
  return is_number
>>> is_number('Nan')  
False
>>> is_number('nan') 
False
>>> is_number('123') 
True
>>> is_number('-123') 
True
>>> is_number('-1.12')
True
>>> is_number('abc') 
False
>>> is_number('inf') 
True

第二种:只能判断是整数

使用isnumeric()

# str必须是uniconde模式
>>> str = u"345"
>>> str.isnumeric()True
http://www.tutorialspoint.com/python/string_isnumeric.htm
http://docs.python.org/2/howt...

使用isdigit()

https://docs.python.org/2/lib...
>>> str = "11"
>>> print str.isdigit()
True
>>> str = "3.14"
>>> print str.isdigit()
False
>>> str = "aaa"
>>> print str.isdigit()
False

使用int()

def is_int(str):
  try:
    int(str)
    return True
  except ValueError:
    return False

第三种:使用正则(最安全方法)

import re
def is_number(num):
  pattern = re.compile(r'^[-+]?[-0-9]\d*\.\d*|[-+]?\.?[0-9]\d*$')
  result = pattern.match(num)
  if result:
    return True
  else:
    return False
>>>: is_number('1')
True
>>>: is_number('111')
True
>>>: is_number('11.1')
True
>>>: is_number('-11.1')
True
>>>: is_number('inf')
False
>>>: is_number('-inf')
False

总结

以上所述是小编给大家介绍的Python判断字符串是否为字母或者数字(浮点数)的多种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
实例讲解Python中的私有属性
Aug 21 Python
Windows下PyMongo下载及安装教程
Apr 27 Python
python django 增删改查操作 数据库Mysql
Jul 27 Python
python发送邮件实例分享
Jul 28 Python
Python学生成绩管理系统简洁版
Apr 05 Python
Python 中的 global 标识对变量作用域的影响
Aug 12 Python
python生成requirements.txt的两种方法
Sep 18 Python
python并发爬虫实用工具tomorrow实用解析
Sep 25 Python
python3 sorted 如何实现自定义排序标准
Mar 12 Python
Django实现前台上传并显示图片功能
May 29 Python
python 常见的反爬虫策略
Sep 27 Python
Python还能这么玩之只用30行代码从excel提取个人值班表
Jun 05 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
Aug 03 #Python
python中copy()与deepcopy()的区别小结
Aug 03 #Python
Python爬取个人微信朋友信息操作示例
Aug 03 #Python
python opencv人脸检测提取及保存方法
Aug 03 #Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
Aug 03 #Python
OpenCV+python手势识别框架和实例讲解
Aug 03 #Python
Windows下将Python文件打包成.EXE可执行文件的方法
Aug 03 #Python
You might like
很实用的一个完整email发送程序
2006/10/09 PHP
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
2014/11/08 PHP
javascript 二维数组的实现与应用
2010/03/16 Javascript
JavaScript中的isXX系列是否继续使用的分析
2011/04/16 Javascript
js 静态动态成员 and 信息的封装和隐藏
2011/05/29 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
2012/04/14 Javascript
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
JavaScript取得鼠标绝对位置程序代码介绍
2012/09/16 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
2012/12/26 Javascript
javascript使用中为什么10..toString()正常而10.toString()出错呢
2013/01/11 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
2016/04/01 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
js模糊查询实例分享
2016/12/26 Javascript
bootstrap导航栏、下拉菜单、表单的简单应用实例解析
2017/01/06 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
通过jquery获取上传文件名称、类型和大小的实现代码
2018/04/19 jQuery
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
解决LayUI加上form.render()下拉框和单选以及复选框不出来的问题
2019/09/27 Javascript
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
js实现简单音乐播放器
2020/06/30 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
python实现2048小游戏
2015/03/30 Python
Python分析学校四六级过关情况
2017/11/22 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
Python Django基础二之URL路由系统
2019/07/18 Python
django搭建项目配置环境和创建表过程详解
2019/07/22 Python
浅析pandas 数据结构中的DataFrame
2019/10/12 Python
五款漂亮的纯CSS3动画按钮的实例教程
2014/11/21 HTML / CSS
AmazeUI 输入框组的示例代码
2020/08/14 HTML / CSS
就业协议书范本
2014/10/08 职场文书
公务员个人年终总结
2015/02/12 职场文书
军训阅兵新闻稿
2015/07/17 职场文书
《春酒》教学反思
2016/02/22 职场文书