python基础知识--2、8、10、16进制转换大全

bool布尔类型与数字类型的相互转换

int,float 强转为 bool型———0—>>False 非零—>>True

# 数字类型的强制转换
    # int,float强转为bool型       0--->>False     非零--->>True
print(bool(0), type(bool(0)))       # False <class 'bool'>
print(bool(7), type(bool(7)))       # True <class 'bool'>
print(bool(0.0), type(bool(0.0)))    # False <class 'bool'>
print(bool(0.0007), type(bool(0.0007)))     # True <class 'bool'>

bool 强转 int,float ———False—>>0 True—>>1

   # bool强转int,float      False--->>0      True--->>1
print(int(False), type(int(False)))       # 0 <class 'int'>
print(int(True), type(int(True)))       # 1 <class 'int'>
print(float(False), type(float(False))) # 0.0 <class 'float'>
print(float(True), type(float(True)))   # 1.0 <class 'float'>

int与float之间相互转换

int 转 float————会直接添加一个0的小数

print(float(10), type(float(10)))       # 10.0 <class 'float'>

float 转 int————会直接砍掉小数部分

print(int(7.77), type(int(7.77)))       # 7 <class 'int'>

整数+浮点数 转为浮点数

print(10+7.7, type(10+7.7))     # 17.7 <class 'float'>

自动升级

数字类型复杂度

# 数字类型复杂度bool<int<float<complex
print(True+7, type(True+7))     # 8 <class 'int'>
print(True+7.77, type(True+7.7))        # 8.77 <class 'float'>

二进制、八进制、十进制、十六进制的相互转换

二进制以0b或者0B开头—>> 0 1 满二进一

print(0b1010)   # 10
print(0B1010)   # 10

2进制转换成8进制:oct(int(“number”,2))

print(oct(int("1111111", 2)))   # 0o177

2进制转换成10进制:int(“number”,2)

print(int("1111111", 2))	# 127

2进制转换成16进制:hex(int(“number”,2))

print(hex(int("1111111",2)))	# 0x7f

八进制以0o或者0O开头—>> 0~7 满八进一

print(0o06)     # 6
print(0O012)    # 10

8进制转换成2进制:bin(int(“number”,8))

print(bin(int("0o777", 8)))	# 0b111111111

8进制转换成10进制:int(“number”,8)

print(int("0o777",8))	# 511

8进制转换成16进制:hex(int(“number”,8))

print(hex(int("0o1010",8)))	# 0x208

十进制—>>0~9 满十进一

10进制转换成2进制:bin(number)

print(bin(777))	# 0b1100001001

10进制转换成8进制:oct(number)

print(oct(777))	# 0o1411

10进制转换成16进制:hex(number)

print(hex(777))	# 0x309

十六进制以0x或者0X开头—>> 0-9,A~F 满十六进一

print(0x0A) # 10
print(0X07) # 7

16进制转换成2进制:bin(int(“number”,16))

print(bin(int("0x777", 16)))	#0b11101110111

16进制转换成8进制:oct(int(“number”,16))

print(oct(int("0x777",16)))	#0o3567

16进制转换成10进制:int(“number”,16)

print(int("0x777",16))	# 1911

进制转换使用的函数

print(hex(10))      # 0xa
print(oct(10))      # 0o12
print(bin(10))      # 0b1010

ascll码表转十进制数字

ascll表网址: https://baike.baidu.com/item/ASCII/309296?fr=aladdin.

ascll表字符转十进制数字 :ord(“ascll字符”)

print(ord("w"))     # 119
print(ord("?"))     # 63
print(ord("%"))     # 37
# 转成十进制之后,可以跟具十进制数转其他进制数,具体请看上边的进制转换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值