基于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 list中append()与extend()用法分享
Mar 24 Python
详解在Python的Django框架中创建模板库的方法
Jul 20 Python
浅谈Python中列表生成式和生成器的区别
Aug 03 Python
网站渗透常用Python小脚本查询同ip网站
May 08 Python
python爬取网页内容转换为PDF文件
Jul 28 Python
pycharm+PyQt5+python最新开发环境配置(踩坑)
Feb 11 Python
python列表插入append(), extend(), insert()用法详解
Sep 14 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
Python自动巡检H3C交换机实现过程解析
Aug 14 Python
python boto和boto3操作bucket的示例
Oct 30 Python
编译 pycaffe时报错:fatal error: numpy/arrayobject.h没有那个文件或目录
Nov 29 Python
python中time、datetime模块的使用
Dec 14 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 split汉字
2009/06/05 PHP
phpMyAdmin链接MySql错误 个人解决方案
2009/12/28 PHP
PHP 金额数字转换成英文
2010/05/06 PHP
解析PHP中如何将数组变量写入文件
2013/06/06 PHP
解析thinkphp的左右值无限分类
2013/06/20 PHP
php实现的表单验证类完整示例
2019/08/13 PHP
总结一些js自定义的函数
2006/08/05 Javascript
jQuery TextBox自动完成条
2009/07/22 Javascript
jquery学习笔记 用jquery实现无刷新登录
2011/08/08 Javascript
js jq 单击和双击区分示例介绍
2013/11/05 Javascript
浅析jquery的js图表组件highcharts
2014/03/06 Javascript
Javascript的闭包详解
2014/12/26 Javascript
JavaScript定时器和优化的取消定时器方法
2015/07/03 Javascript
详解基于javascript实现的苹果系统底部菜单
2016/12/02 Javascript
详解Vue 多级组件透传新方法provide/inject
2018/05/09 Javascript
Vue2.0 v-for filter列表过滤功能的实现
2018/09/07 Javascript
JS canvas绘制五子棋的棋盘
2020/05/28 Javascript
js实现指定时间倒计时效果
2019/08/26 Javascript
layui点击数据表格添加或删除一行的例子
2019/09/12 Javascript
es6中Promise 对象基本功能与用法实例分析
2020/02/23 Javascript
JS实现横向跑马灯效果代码
2020/04/20 Javascript
[39:46]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第二场 11.25
2020/11/25 DOTA
Python动态加载模块的3种方法
2014/11/22 Python
30分钟搭建Python的Flask框架并在上面编写第一个应用
2015/03/30 Python
Python基于回溯法解决01背包问题实例
2017/12/06 Python
Python爬虫番外篇之Cookie和Session详解
2017/12/27 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
python 平衡二叉树实现代码示例
2018/07/07 Python
Python之列表实现栈的工作功能
2019/01/28 Python
在Python运行时动态查看进程内部信息的方法
2019/02/22 Python
美国当红的名品折扣网:Gilt Groupe
2016/08/15 全球购物
美国知名的时尚购物网站:Anthropologie
2016/12/22 全球购物
为数据库创建索引都需要注意些什么
2012/07/17 面试题
2015年世界水日活动总结
2015/02/09 职场文书
巾帼建功标兵先进事迹材料
2016/02/29 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery