您的位置:首页 > 编程语言 > Python开发

pycharm环境下进制转换-将十进制数转换为二进制、八进制、十六进制

2017-11-29 21:24 911 查看
#包装一个打印函数,用于打印输出
#def fun print_array
def print_array(a):
for i in a:
print(str(i),end="")#不换行输出结果
#定义二进制转换函数
# define fun two_transfer
def two_transfer(x):
a=[]
while x!=0:
a.append(x%2)
x=int(x/2)
a.reverse()
print("二进制结果为:",end="")
print_array(a)#此处调用自定义的打印函数
#定义八进制转换函数
#def fun eight_transfer
def eight_transfer(x):
a=[]
while x!=0:
a.append(x%8)
x=int(x/8)
a.reverse()
print("八进制结果为:", end="")
print_array(a)#调用打印函数
#定义十六进制打印函数
#def fun sixteen_transfer
def sixteen_transfer(x):
a=[]
while x!=0:
a.append(x%16)
x=int(x/16)
a.reverse()
#以下将11-15转换为A-E
for i in a:
if i==10:
i='A'
elif i==11:
i='B'
elif i == 12:
i = 'C'
elif i == 13:
i ='D'
elif i == 14:
i = 'E'
elif i == 15:
i = 'F'
print("十六进制结果为:", end="")
print(str(i),end="")
#自定义函数
#def main function
def main():
s=int(input("输入一个正整数:"))
x=int(input("输入您要转换的进制2、8、16:"))
if x==2:
two_transfer(s)
elif x==8:
eight_transfer(s)
elif x==16:
sixteen_transfer(s)
else:
print("您的输入有误!")
#程序的入口
#program entry
main()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python 进制转换
相关文章推荐