Python进制转换和补零「建议收藏」

2022-08-26 16:01:04 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

1、补零

1)字符串

python中有一个zfill方法用来给字符串前面补0,非常有用

代码语言:javascript复制
n = "123"
s = n.zfill(5)
assert s == "00123"

zfill()也可以给负数补0

代码语言:javascript复制
n = "-123"
s = n.zfill(5)
assert s == "-0123"

2)数字补零

通过格式化的方式来补0

代码语言:javascript复制
n = 123
s = "d" % n
assert s == "00123"

或者format函数实现

代码语言:javascript复制
>>> a = 2
>>> b = '{:08b}'.format(a)

2、进制转换

进制转换都可以分为:

1、整型转换为字符型数值 bin() oct() hex()str()分别为2进制、8进制、16进制、10进制的整型数值转字符型数值函数

2、字符型数值转换为整型 int()

3、字符型数值互转 进制转换表:

不同的进制转换,都是以整型数值作为桥梁,而进行的不同的进制的字符型数值的转换

int()函数可以将一个字符型数值转换为整型数值

举例

1)整型转换为字符字符型数值 将数值16转换为2/8/10/16进制的字符串数值

>>> bin(16) ‘0b10000’ >>> oct(16) ‘020’ >>> str(16) ’16’ >>> hex(16) ‘0x10’ 2进制、8进制、10进制、16进制、的整型数值转字符型数值函数

2)字符型数值转换为整型 将2/8/10/16进制的字符串转换为数值16

>>> int(“0b10000”,2) 16 >>> int(“0o020”,8) 16 >>> int(“16”,10) 16 >>> int(“0x10”,16) 16

3)字符型数值互转

>>> bin(int(“16”)) # 10进制字符型数值转2进制字符型数值 ‘0b10000’ >>> oct(int(“10”,16)) # 16进制字符型数值转8进制字符型数值 ‘020’ >>> bin(int(“020”,8)) # 8进制字符型数值转2进制字符型数值 ‘0b10000’

3.ASCII码和字母之间的转换

字母转ASCII:

ord(c):参数是长度为1的字符串,简称字符。

ASCII转字母:

chr(i):返回一个字符,字符的ascii码等于参数中的整形数值。

特殊ASCII码:

A-65,Z-90,a-97,z-122,0-48,9-57

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144437.html原文链接:https://javaforall.cn

0 人点赞