Python进制转换和补零

1、补零

1)字符串

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

n = "123"
s = n.zfill(5)
assert s == "00123"

zfill()也可以给负数补0

n = "-123"
s = n.zfill(5)
assert s == "-0123"

2)数字补零

通过格式化的方式来补0

n = 123
s = "%05d" % n
assert s == "00123"

或者format函数实现

>>> 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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值