python如何实现int函数的方法示例


Posted in Python onFebruary 19, 2018

前言

拖了这么久,最终还是战胜了懒惰,打开电脑写了这篇博客,内容也很简单,python实现字符串转整型的int方法

python已经实现了int方法,我们为什么还要再写一遍,直接用不就好了?事实确实如此,但是int函数看似简单,实际上自己来实现还是有一些坑的

1.判断正负

这点很容易忘记

2.python不能字符串减法

python不能像c++一样直接使用s - '0'直接实现个位数的字符串转整型,而是需要转换ascii码,ord(s) - ord('0')来实现转换

3.判断是否超限

这也是手写int函数最容易忽略的问题,返回结果不能出int的限制,python中int类型的最大值使用sys.maxint查看。但是python语言很神奇,实际上python内置的int方法并没有结果必须小于maxint的限制

下面给出我的python实现

#!/use/bin/env python
# _*_ coding:utf-8 _*_
import sys
max_int = sys.maxint
num_tuple = ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9')
def _int(input_string):
 total_num = 0
 is_minus = False
 string = input_string.strip()
 if string.startswith('-'):
  is_minus = True
  string = string[1:]
 for s in string:
  if s not in num_tuple:
   print "input error"
   return 0
  num = ord(s) - ord('0')
  total_num = total_num * 10 + num
  if total_num > max_int:
   total_num = max_int
   break
 return total_num * -1 if is_minus else total_num

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python逐行读取文件内容的三种方法
Jan 20 Python
python遍历文件夹并删除特定格式文件的示例
Mar 05 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
python 使用sys.stdin和fileinput读入标准输入的方法
Oct 17 Python
python 字符串追加实例
Jul 20 Python
python 扩展print打印文件路径和当前时间信息的实例代码
Oct 11 Python
浅谈pytorch torch.backends.cudnn设置作用
Feb 20 Python
python pandas移动窗口函数rolling的用法
Feb 29 Python
对python中list的五种查找方法说明
Jul 13 Python
用python批量移动文件
Jan 14 Python
python开发实时可视化仪表盘的示例
May 07 Python
使用tensorflow 实现反向传播求导
May 26 Python
Python cookbook(数据结构与算法)实现查找两个字典相同点的方法
Feb 18 #Python
Python cookbook(数据结构与算法)字典相关计算问题示例
Feb 18 #Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 #Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
Feb 18 #Python
Python cookbook(数据结构与算法)实现优先级队列的方法示例
Feb 18 #Python
python快速建立超简单的web服务器的实现方法
Feb 17 #Python
Python cookbook(数据结构与算法)找到最大或最小的N个元素实现方法示例
Feb 13 #Python
You might like
php将csv文件导入到mysql数据库的方法
2014/12/24 PHP
YII2框架中actions的作用与使用方法示例
2020/03/13 PHP
juqery 学习之四 筛选过滤
2010/11/30 Javascript
深入理解javascript中return的作用
2013/12/30 Javascript
使用百度地图api实现根据地址查询经纬度
2014/12/11 Javascript
javascript适合移动端的日期时间拾取器
2015/11/10 Javascript
原生javascript实现图片放大镜效果
2017/01/18 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
Ajax高级笔记 JavaScript高级程序设计笔记
2017/06/22 Javascript
vue2.0全局组件之pdf详解
2017/06/26 Javascript
JavaScript多线程运行库Nexus.js详解
2017/12/22 Javascript
JavaScript Canvas实现验证码
2020/08/02 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
2018/10/12 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
2019/09/24 Javascript
使用Python压缩和解压缩zip文件的教程
2015/05/06 Python
利用Python如何生成随机密码
2016/04/20 Python
Python3 处理JSON的实例详解
2017/10/29 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
Python BS4库的安装与使用详解
2018/08/08 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
Django之使用celery和NGINX生成静态页面实现性能优化
2019/10/08 Python
Python assert关键字原理及实例解析
2019/12/13 Python
Python导入模块包原理及相关注意事项
2020/03/25 Python
Python制作运行进度条的实现效果(代码运行不无聊)
2021/02/24 Python
仿酷狗html5手机音乐播放器主要部分代码
2013/05/15 HTML / CSS
华润集团网上药店:健一网
2016/09/19 全球购物
技校毕业生自荐信
2014/06/03 职场文书
高中教师个人总结
2015/02/10 职场文书
优秀团员自我评价
2015/03/10 职场文书
员工开除通知书
2015/04/25 职场文书
2015年检验科工作总结
2015/04/27 职场文书
安全生产感想
2015/08/07 职场文书
爱护环境建议书
2015/09/14 职场文书
微信小程序基础教程之echart的使用
2021/06/01 Javascript
python 网络编程要点总结
2021/06/18 Python
python可视化大屏库big_screen示例详解
2021/11/23 Python