python二进制转八进制代码_Python二进制转八进制代码

Python实现二进制到八进制转换
这段代码展示了如何使用Python将二进制数(包括整数和小数部分)转换为八进制数。用户输入二进制数,程序将其拆分为整数和小数部分,分别进行转换,最后输出转换后的八进制数。

#二进制转化成八进制

print("请输入一个二进制数\n")

SUM1=[]

SUM2=[]

A=0

B=0

int1=[]#整数部分存放处

float1=[]#小数部分存放处

a1=int(input("请输入二进制的整数部分"))

print("a1=",a1)#整数部分

a2=input("请输入二进制的小数部分")

print("a2=",a2)

for x in a2:

float1.append(int(x))

while(a1&gt=1):

int1.append(a1%10)

a1=a1//10

int3=[]

int3=int1.copy()

int3.reverse()

print("您输入的二进制是:",end="")

for i in int3:

print(i,end="")

print(".",end="")

for i in float1:

print(i,end="")

print("\n")

def sumint(v):

j=0

summ=0

for i in v:

summ=summ+i*(2**j)

j=j+1

return summ#输入三位二进制,输出一个八进制

int2=[]

while(A&ltlen(int1)):

i=int1[A]

int2.append(i)

if len(int2)==3:

SUM1.append(sumint(int2))

int2=[]

elif A+1==len(int1):

SUM1.append(sumint(int2))

else:

pass

A=A+1

#整数部分

float2=[]

while B&ltlen(float1):

I=float1[B]

float2.insert(0,I)

if len(float2)==3:

SUM2.append(sumint(float2))

float2=[]

elif B+1==len(float1):

if len(float2)==1:

SUM2.append(4)

if len(float2)==2:

float2.insert(0,0)

SUM2.append(sumint(float2))

B=B+1

#小数部分

SUM1.reverse()

print("最终求得的八进制是:",end=" ")

for i in SUM1:

print(i,end="")

print(".",end="")

for ii in SUM2:

print(ii,end="")

print("\n")

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值