python如何实现int函数的方法示例
2018-02-19 11:07
736 查看
前言
拖了这么久,最终还是战胜了懒惰,打开电脑写了这篇博客,内容也很简单,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如何实现守护进程的方法示例
- docker python如何实现打包的方法
- python 7-6 如何使用描述符对实例属性做类型检查,分别实现set,方法,在set内使用isinstance做类型检查
- python实现斐波那契数列的方法示例
- Python实现中文数字转换为阿拉伯数字的方法示例
- python如何实现——日期加上天数的处理方法
- python访问mysql数据库的实现方法(2则示例)
- Tornado协程在python2.7如何返回值(实现方法)
- python实现list元素按关键字相加减的方法示例
- Python实现将SQLite中的数据直接输出为CVS的方法示例
- Python实现导出数据生成excel报表的方法示例
- python如何实现——日期加上天数的处理方法
- Python实现复杂对象转JSON的方法示例
- Python实现对象转换为xml的方法示例
- java中,父类是抽象类不能通过工厂输出时,如何通过其他类实现输出的示例代码(工厂方法种类(1))
- python 7-5 如何让类支持比较操作lt/le/total_ordering可以简化此过程,实现lt eq 后,可以推测出<= >=方法
- Python基于scapy实现修改IP发送请求的方法示例
- python访问mysql数据库的实现方法(2则示例)
- Python实现向服务器请求压缩数据及解压缩数据的方法示例
- Python实现两个list求交集,并集,差集的方法示例