基于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中xrange和range的区别
May 13 Python
python3实现短网址和数字相互转换的方法
Apr 28 Python
python获取指定路径下所有指定后缀文件的方法
May 26 Python
Python中的Descriptor描述符学习教程
Jun 02 Python
Python玩转Excel的读写改实例
Feb 22 Python
python3.x实现base64加密和解密
Mar 28 Python
python使用Qt界面以及逻辑实现方法
Jul 10 Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 Python
使用Python制作新型冠状病毒实时疫情图
Jan 28 Python
深入浅析python的第三方库pandas
Feb 13 Python
pyecharts调整图例与各板块的位置间距实例
May 16 Python
使用Django实现商城验证码模块的方法
Jun 01 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
用C/C++扩展你的PHP 为你的php增加功能
2012/09/06 PHP
PHP获取毫秒级时间戳的方法
2015/04/15 PHP
PHP导出带样式的Excel示例代码
2016/08/28 PHP
laravel dingo API返回自定义错误信息的实例
2019/09/29 PHP
Javascript开发之三数组对象实例介绍
2012/11/12 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
基于JS实现EOS隐藏错误提示层代码
2016/04/25 Javascript
BootStrap响应式导航条实例介绍
2016/05/06 Javascript
浅谈javascript中的Function和Arguments
2016/08/30 Javascript
Angular实现一个简单的多选复选框的弹出框指令实例
2017/04/25 Javascript
JS中的三个循环小结
2017/06/20 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
2018/03/13 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
JavaScript设计模式之享元模式实例详解
2019/01/17 Javascript
微信小程序获取当前位置和城市名
2019/11/13 Javascript
微信小程序8种数据通信的方式小结
2020/02/03 Javascript
在js文件中引入(调用)另一个js文件的三种方法
2020/09/11 Javascript
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
[06:50]DSPL次级职业联赛十强晋级之路
2014/11/18 DOTA
python爬虫实现教程转换成 PDF 电子书
2017/02/19 Python
python 实时得到cpu和内存的使用情况方法
2018/06/11 Python
python 实现A*算法的示例代码
2018/08/13 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
如何将json数据转换为python数据
2020/09/04 Python
CSS3 3D酷炫立方体变换动画的实现
2019/03/26 HTML / CSS
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
中青班党性分析材料
2014/02/16 职场文书
体育教学随笔感言
2014/02/24 职场文书
会计专业自荐信
2014/06/03 职场文书
办公室主任四风问题对照检查材料思想汇报
2014/09/28 职场文书
tensorflow学习笔记之tfrecord文件的生成与读取
2021/03/31 Python
java如何实现获取客户端ip地址的示例代码
2022/04/07 Java/Android
spring boot实现文件上传
2022/08/14 Java/Android