Python不使用int()函数把字符串转换为数字的方法


Posted in Python onJuly 09, 2018

不使用int()函数的情况下把字符串转换为数字,如把字符串"12345"转换为数字12345。

方法一:利用str函数

既然不能用int函数,那我们就反其道而行,用str函数找出每一位字符表示的数字大写。

def atoi(s):
 s = s[::-1]
 num = 0
 for i, v in enumerate(s):
  for j in range(0, 10):
   if v == str(j):
   num += j * (10 ** i)
 return num

方法二:利用ord函数

利用ord求出每一位字符的ASCII码再减去字符0的ASCII码求出每位表示的数字大写。

def atoi(s):
 s = s[::-1]
 num = 0
 for i, v in enumerate(s):
  offset = ord(v) - ord('0')
  num += offset * (10 ** i)
 return num

方法三:利用eval函数

eval的功能是将字符串str当成有效的表达式来求值并返回计算结果。我们利用这特点可以利用每位字符构造成和1相乘的表达式,再用eval算出该表达式的返回值就表示数字大写。

def atoi(s):
 s = s[::-1]
 num = 0
 for i, v in enumerate(s):
  t = '%s * 1' % v
  n = eval(t)
  num += n * (10 ** i)
 return num

以上这篇Python不使用int()函数把字符串转换为数字的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 列表list使用介绍
Nov 30 Python
优化Python代码使其加快作用域内的查找
Mar 30 Python
举例讲解Python中is和id的用法
Apr 03 Python
简单介绍Python的Tornado框架中的协程异步实现原理
Apr 23 Python
Python实现句子翻译功能
Nov 14 Python
Python 打印中文字符的三种方法
Aug 14 Python
Anaconda2 5.2.0安装使用图文教程
Sep 19 Python
python中的colorlog库使用详解
Jul 05 Python
Python如何使用Gitlab API实现批量的合并分支
Nov 27 Python
python开根号实例讲解
Aug 30 Python
Python模拟键盘输入自动登录TGP
Nov 27 Python
python定义具名元组实例操作
Feb 28 Python
python中ASCII码和字符的转换方法
Jul 09 #Python
python中ASCII码字符与int之间的转换方法
Jul 09 #Python
Python 十六进制整数与ASCii编码字符串相互转换方法
Jul 09 #Python
python 以16进制打印输出的方法
Jul 09 #Python
python爬虫之urllib3的使用示例
Jul 09 #Python
机器学习之KNN算法原理及Python实现方法详解
Jul 09 #Python
Python实现基于KNN算法的笔迹识别功能详解
Jul 09 #Python
You might like
php学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
PHP加密解密实例分析
2015/12/25 PHP
JavaScript CSS修改学习第六章 拖拽
2010/02/19 Javascript
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
js跨域访问示例(客户端/服务端)
2014/05/19 Javascript
js中自定义方法实现停留几秒sleep
2014/07/11 Javascript
使用node.js半年来总结的 10 条经验
2014/08/18 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
2014/10/14 Javascript
JS提交form表单实例分析
2015/12/10 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
轻松学习JavaScript函数中的 Rest 参数
2019/05/30 Javascript
vue2之简易的pc端短信验证码的问题及处理方法
2019/06/03 Javascript
JavaScript中的全局属性与方法深入解析
2020/06/14 Javascript
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
python del()函数用法
2013/03/24 Python
Python使用面向对象方式创建线程实现12306售票系统
2015/12/24 Python
Python基础语法(Python基础知识点)
2016/02/28 Python
深入解析Python中函数的参数与作用域
2016/03/20 Python
Python使用Mechanize模块编写爬虫的要点解析
2016/03/31 Python
Python中struct模块对字节流/二进制流的操作教程
2017/01/21 Python
[原创]pip和pygal的安装实例教程
2017/12/07 Python
anaconda中更改python版本的方法步骤
2019/07/14 Python
pytorch 修改预训练model实例
2020/01/18 Python
HTML5 Web 存储详解
2016/09/16 HTML / CSS
瑞士图书网站:Weltbild.ch
2019/09/17 全球购物
现金会计岗位职责
2013/12/05 职场文书
事业单位竞聘上岗实施方案
2014/03/28 职场文书
药剂专业毕业生求职信
2014/06/24 职场文书
三月法制宣传月活动总结
2014/07/03 职场文书
成都人事代理协议书
2014/10/25 职场文书
2014年审计工作总结
2014/11/17 职场文书
年度考核表个人总结
2015/03/06 职场文书
幼儿园毕业典礼家长致辞
2015/07/29 职场文书
八年级物理教学反思
2016/02/19 职场文书
祝福语集锦:送给闺蜜的生日祝福语
2019/10/08 职场文书