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获取当前时间对应unix时间戳的方法
May 15 Python
python妹子图简单爬虫实例
Jul 07 Python
python抓取网页中图片并保存到本地
Dec 01 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
Python简单实现Base64编码和解码的方法
Apr 29 Python
django 创建过滤器的实例详解
Aug 14 Python
python中requests和https使用简单示例
Jan 18 Python
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
Sep 27 Python
Python实现的删除重复文件或图片功能示例【去重】
Apr 23 Python
我就是这样学习Python中的列表
Jun 02 Python
python的pstuil模块使用方法总结
Jul 26 Python
浅谈tensorflow中张量的提取值和赋值
Jan 19 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
一个程序下载的管理程序(三)
2006/10/09 PHP
php 短链接算法收集与分析
2011/12/30 PHP
调整PHP的性能
2013/10/30 PHP
PHP结合JQueryJcrop实现图片裁切实例详解
2014/07/24 PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
2014/12/01 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
Laravel框架实现文件上传的方法分析
2019/09/29 PHP
js定时器的使用(实例讲解)
2014/01/06 Javascript
jQuery对于显示和隐藏等常用状态的判断方法
2014/12/13 Javascript
JavaScript实现LI列表数据绑定的方法
2015/08/04 Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
2016/01/26 Javascript
vue-hook-form使用详解
2017/04/07 Javascript
详解用webpack2搭建angular2的项目
2017/06/22 Javascript
关于定制FileField中的上传文件名称问题
2017/08/22 Javascript
vue组件间通信子与父详解(二)
2017/11/07 Javascript
利用JS判断客户端类型你应该知道的四种方法
2017/12/22 Javascript
基于vue2.x的电商图片放大镜插件的使用
2018/01/22 Javascript
这样回答继承可能面试官更满意
2019/12/10 Javascript
小程序使用分包的示例代码
2020/03/23 Javascript
jQuery实现朋友圈查看图片
2020/09/11 jQuery
如何将Node.js中的回调转换为Promise
2020/11/10 Javascript
Python2.7读取PDF文件的方法示例
2017/07/13 Python
基于python生成器封装的协程类
2019/03/20 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
机电专业毕业生求职信
2013/10/27 职场文书
法律工作求职自荐信
2013/10/31 职场文书
小学毕业典礼主持词
2014/03/27 职场文书
政风行风建设责任书
2014/07/23 职场文书
个人贷款授权委托书样本
2014/10/07 职场文书
大学生就业协议书范本(适用于公司企业)
2014/10/07 职场文书
导游词之蜀山胜景瓦屋山
2019/11/29 职场文书
Go语言应该什么情况使用指针
2021/07/25 Golang
MySQL里面的子查询的基本使用
2021/08/02 MySQL
Python 键盘事件详解
2021/11/11 Python
python数据处理之Pandas类型转换
2022/04/28 Python
Java线程的6种状态与生命周期
2022/05/11 Java/Android