基于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基类函数的重载与调用实例分析
Jan 12 Python
Python打印“菱形”星号代码方法
Feb 05 Python
python中字符串变二维数组的实例讲解
Apr 03 Python
Selenium定位元素操作示例
Aug 10 Python
python binascii 进制转换实例
Jun 12 Python
Python中的几种矩阵乘法(小结)
Jul 10 Python
Python facenet进行人脸识别测试过程解析
Aug 16 Python
python多线程实现TCP服务端
Sep 03 Python
Window10下python3.7 安装与卸载教程图解
Sep 30 Python
python sorted函数原理解析及练习
Feb 10 Python
django中related_name的用法说明
May 20 Python
python 生成器需注意的小问题
Sep 29 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
PHP实现异步调用方法研究与分享
2011/10/27 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
Php-Redis安装测试笔记
2015/03/05 PHP
常见的四种POST 提交数据方式(小总结)
2015/10/08 PHP
php用户注册信息验证正则表达式
2015/11/12 PHP
用js实现计算加载页面所用的时间
2010/04/02 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
使用变量动态设置js的属性名
2014/10/19 Javascript
js实现按钮加背景图片常用方法
2014/11/01 Javascript
JQuery包裹DOM节点的方法
2015/06/11 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
javascript简单进制转换实现方法
2016/11/24 Javascript
jQuery鼠标悬停内容动画切换效果
2017/04/27 jQuery
vue通过路由实现页面刷新的方法
2018/01/25 Javascript
js中Array对象的常用遍历方法详解
2019/01/17 Javascript
layui使用form表单实现post请求页面跳转的方法
2019/09/14 Javascript
JavaScript单线程和任务队列原理解析
2020/02/04 Javascript
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
[01:03:09]完美世界DOTA2联赛PWL S2 Forest vs SZ 第二场 11.25
2020/11/26 DOTA
Python实现的Google IP 可用性检测脚本
2015/04/23 Python
python抓取并保存html页面时乱码问题的解决方法
2016/07/01 Python
Ubuntu下创建虚拟独立的Python环境全过程
2017/02/10 Python
python如何实现int函数的方法示例
2018/02/19 Python
python输出100以内的质数与合数实例代码
2018/07/08 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
设置jupyter中DataFrame的显示限制方式
2020/04/12 Python
django form和field具体方法和属性说明
2020/07/09 Python
python中append函数用法讲解
2020/12/11 Python
基于CSS3制作立体效果导航菜单
2016/01/12 HTML / CSS
编码实现字符串转整型的函数
2012/06/02 面试题
优秀实习自我鉴定
2013/12/04 职场文书
大学生优秀团员事迹材料
2014/01/30 职场文书
政府会议通知范文
2015/04/15 职场文书
Python实现GIF动图以及视频卡通化详解
2021/12/06 Python
Redis监控工具RedisInsight安装与使用
2022/03/21 Redis
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技