这是一般的方式,适用于不需要特殊要求的方式,当需要对字符转换成的数值进行进制的转换的时候,就需要string模块了。
>>> string.atoi("12") 12 >>> string.atoi("12",16) 表示12是16进制的,转换成10进制是18 18 >>> string.atoi("12",8) 10后面的参数是字符串的进制,如果不写,默认是10进账,转换后的结果默认是10进制。
六.字符串编码和解码这个是程序跨平台很常见的问题,由于不同平台显示的编码格式不同,容易出现乱码问题,常用的方式在输入输出的时候已经写了,但是在局部特殊使用时还是需要方法解决,就会用到decode和encode,将字符串先转换成Python内部的Unicode码,运行时转换成相应平台可显示的编码。
1.decodedecode是用于对Unicode进行编码,使用方式一般是str.decode(encoding='UTF-8',errors='strict'),errors参数是设置编码不成功的处理方案,其可能得值有'strict','ignore','replace','xmlcharrefreplace' ,'backslashreplace'以及通过codecs.register_error()注册的任何值,encoding参数是编码类型。
2.encodeencode是对某个类型的字符串解码成Unicode,使用方法一般是str.encode(encoding='UTF-8',errors='strict'),参数和decode相同,而在sys有个方法可以与这两个配合使用,sys.getdefaultencoding()用于获取当前系统使用的默认编码类型。