基于python实现判断字符串是否数字算法


Posted in Python onJuly 10, 2020

算法1

1、分小数和整数:如果小数点个数为1,则可能是小数。如小数点个数为0,则可能是整数。小数点个数非0也非1,那么就不是数字。

2、如果是小数,再分正数和负数的情况:如果首位为负号,则可能是负小数。如果首位不为负号,则可能是正小数。

1)如果首位为负号,则去掉负号。

2)如果首位不为负号;或者是首位为负号,去掉首位负号之后。则判断是否为是否为“.”,如果是,那么就不是数字,如果不是,就去掉"."

3)再判断剩下字符是否都在"0123456789"内,如果不都在则不是数字,否则就是数字

3、如果是整数,也同样分正数和负数的情况。如果首位为负号,则可能是负整数,如果首位不为负号,则可能是正整数。

1)如果首位诶负号,则去掉负号。

2)如果首位不为负号;或者是首位为负号,去掉首位负号之后。判断剩下字符是否都在"0123456789"内,如果不都在则不是数字,否则就是数字

基于python实现判断字符串是否数字算法

#encoding=utf-8
def is_number(s):
  if s.count(".")==1:  #小数的判断
    if s[0]=="-":
      s=s[1:]
    if s[0]==".":
      return False
    s=s.replace(".","")
    for i in s:
      if i not in "0123456789":
        return False
    else:        #这个else与for对应的
      return True
  elif s.count(".")==0:  #整数的判断
    if s[0]=="-":
      s=s[1:]
    for i in s:
      if i not in "0123456789":
        return False
    else:
      return True
  else:
    return False
print(is_number("1334345345"))
print(is_number("1.12344565"))
print(is_number("-14344343"))
print(is_number("-1.123456"))
print("**********************")
print(is_number("abc"))
print(is_number("1.32.2"))
print(is_number(".2344"))
print(is_number("1234a"))
print(is_number("--1.1"))
print(is_number("--1abc"))

基于python实现判断字符串是否数字算法

算法2

1、判断首位是否是负号或者数字,如果不是,则不是数字。如果是,则可能是数字。

2、判断"."和"-"的个数是否都小于等于1,如果不是,则不是数字,如果是,则可能是数字。

3、去掉"."和"-" 。

4、判断剩下的字符是否都在"0123456789"内,如果不都在则不是数字,否则就是数字

基于python实现判断字符串是否数字算法

#encoding=utf-8
def is_number(s):
  if s[0]=="-" or s[0] in "0123456789":
    if s.count(".")<=1 and s.count("-")<=1:
      s=s.replace("-","").replace(".","")
      #print (s)
      for i in s:
        if i not in "0123456789":
          return False
      else:        #这个else与for对应
        return True
    else:
      return False 
  else:
    return False
print(is_number("1334345345"))
print(is_number("1.12344565"))
print(is_number("-14344343"))
print(is_number("-1.123456"))
print("**********************")
print(is_number("abc"))
print(is_number("1.32.2"))
print(is_number(".2344"))
print(is_number("1234a"))
print(is_number("--1.1"))
print(is_number("--1abc"))

基于python实现判断字符串是否数字算法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之传说中的函数编写条规
Oct 11 Python
Python模仿POST提交HTTP数据及使用Cookie值的方法
Nov 10 Python
实例探究Python以并发方式编写高性能端口扫描器的方法
Jun 14 Python
简单讲解Python编程中namedtuple类的用法
Jun 21 Python
Python 文件操作的详解及实例
Sep 18 Python
python正则实现计算器功能
Dec 14 Python
Python 类的特殊成员解析
Jun 20 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 Python
Python中使用filter过滤列表的一个小技巧分享
May 02 Python
深入浅析pycharm中 Make available to all projects的含义
Sep 15 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
Oct 27 Python
Python使用scapy模块发包收包
May 07 Python
基于python实现计算两组数据P值
Jul 10 #Python
Python3爬虫中关于Ajax分析方法的总结
Jul 10 #Python
Python3爬虫中Ajax的用法
Jul 10 #Python
Python3爬虫中Selenium的用法详解
Jul 10 #Python
Python3爬虫中Splash的知识总结
Jul 10 #Python
Python3爬虫里关于Splash负载均衡配置详解
Jul 10 #Python
python3爬虫中异步协程的用法
Jul 10 #Python
You might like
WindowsXP中快速配置Apache+PHP5+Mysql
2008/06/05 PHP
php仿ZOL分页类代码
2008/10/02 PHP
PHP curl CURLOPT_RETURNTRANSFER参数的作用使用实例
2015/02/07 PHP
JavaScript 对象模型 执行模型
2009/12/06 Javascript
Javascript 判断是否存在函数的方法
2013/01/03 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
详解JavaScript中jQuery和Ajax以及JSONP的联合使用
2015/08/13 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
2017/02/27 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
深入理解React高阶组件
2017/09/28 Javascript
AngularJs 最新验证手机号码的实例,成功测试通过
2017/11/26 Javascript
纯javascript前端实现base64图片下载(兼容IE10+)
2018/09/14 Javascript
Node.js事件的正确使用方法
2019/04/05 Javascript
深入剖析JavaScript instanceof 运算符
2019/06/14 Javascript
解决Can't find variable: SockJS vue项目的问题
2020/09/22 Javascript
javascript实现点击按钮切换轮播图功能
2020/09/23 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
[01:49]一目了然!DOTA2DotA快捷操作对比第二弹
2014/05/16 DOTA
[01:29:42]Liquid vs VP Supermajor决赛 BO 第一场 6.10
2018/07/05 DOTA
python 用下标截取字符串的实例
2018/12/25 Python
python 定时器,轮询定时器的实例
2019/02/20 Python
python 内置函数汇总详解
2019/09/16 Python
python如何快速拼接字符串
2020/10/28 Python
python分布式爬虫中消息队列知识点详解
2020/11/26 Python
浅谈css3中的前缀
2016/07/20 HTML / CSS
华纳兄弟工作室的官方授权商店:WB Shop
2018/11/30 全球购物
马来西亚排名第一的宠物用品店:Pets Wonderland
2020/04/16 全球购物
工业设计专业个人求职信范文
2013/12/28 职场文书
自荐信的基本格式
2014/02/22 职场文书
村党支部公开承诺书
2014/05/29 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
英语投诉信范文
2015/07/03 职场文书
幼儿园中班教育随笔
2015/08/14 职场文书
担保公司2015年终工作总结
2015/10/14 职场文书
HR必备:超全面的薪酬待遇管理方案!
2019/07/12 职场文书