# 字符串无法转换为int a = " aa " # print(int(a)) #Error ValueError: invalid literal for int() with base 10: 'aa' # 非纯数字转换为int报错 a = " 1aa " # print(int(a)) # ValueError: invalid literal for int() with base 10: '1aa' # 浮点string转float b = " 123.1 " # print(int(b)) #Error ValueError: invalid literal for int() with base 10: '123.1' print (float(b)) # 转换为float, 无法直接转换为int # 浮点string转int b = " 1.1 " print (int(float(b))) # 转换为int # long()函数已经过时 推荐使用int() # 不仅python3可以用int()来处理long整形 python2.7.10也是ok的 # 这里要注意的是long()函数只是python2支持 python3是不支持的 python3中将int和long统一使用int()函数来处理 但是支持的数据类型为long c = 1 + int(1) # long和int可以直接相加 print (c) c = 1.0 + int(1) # long和float可以直接相加 print (c) longData = " 1234567890111112222211 " print (type(int(longData))) # python2.7.10已经可以用int函数来返回long类型了 print (type(sys.maxint)) # 9223372036854775807 # int|long|float转string t = 1 print (str(t)) t = sys.maxint + 1 # 9223372036854775808 print (str(t)) t = 123.123 print (str(t))

上面的代码主要涉及:

int-string 互转

long-string 互转

float-string 互转

没有涉及int的10-8-16进制互转,已经string直接转8-16进制。更多的函数请参考: https://www.cnblogs.com/liuyutan/p/13279876.html

为了防止链接丢失,列出其他转换函数:

complex(real[,imag]) repr(x) 将对象x转换为表达式字符串 eval(str) 执行一个字符串表达式,返回对象 tuple() list() set() dict() fronzenset() chr() unichr() ord() hex() oct()