700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python字符串转换为数字_Python不使用int()函数把字符串转换为数字的方法

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

时间:2023-10-22 13:53:26

相关推荐

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

不使用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()函数把字符串转换为数字的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。