Python中的进制转换代码(新手)

很多人在需要解决进制转换时计算很容易出错,前段时间这个问题可折磨的我很是头疼,为此看了一些资料加上自己的理解写了一个小程序,具体如下:

首先,python中有现成的转换函数可以利用

十进制转二进制:a=bin(b)

十进制转八进制:a=oct(b)

十进制转十六进制:a=hex(b)

1.我们引入python中的第三方库:thinker创建一个可视化窗口

import tkinter as tk

win = tk.Tk()
win.title('十进制与其他进制的转换')
win.geometry('500x450')

2.在窗口中设置标签:

t1 = tk.Label(win, text='进制转换\n--------------------', font=24)
t1.grid(row=0, column=1)
t2 = tk.Label(win, text='请输入你要转换的其他进制:\t')
t2.grid(row=1, column=0)
t3 = tk.Label(win, text='结果\t:')
t3.grid(row=2, column=0)
e2 = tk.Entry(win)
e2.grid(row=1, column=1)

3.设置输出框

e3 = tk.StringVar()
tk.Label(win, width=20, height=1, bg='white', textvariable=e3).grid(row=2, column=1)

4.设置函数

def one():
    b = bin(int(e2.get()))
    e3.set(b)


def two():
    c = oct(int(e2.get()))
    e3.set(c)


def three():
    d = hex(int(e2.get()))
    e3.set(d)

5.设置按钮

b2 = tk.Button(win, text="二进制", command=one)
b3 = tk.Button(win, text="八进制", command=two)
b4 = tk.Button(win, text="十六进制", command=three)
b2.grid(row=3, column=0)
b3.grid(row=3, column=1)
b4.grid(row=3, column=3)

 最终的运行结果如下:

 全部代码如下:

 

import tkinter as tk

win = tk.Tk()
win.title('十进制与其他进制的转换')
win.geometry('500x450')
t1 = tk.Label(win, text='进制转换\n--------------------', font=24)
t1.grid(row=0, column=1)
t2 = tk.Label(win, text='请输入你要转换的其他进制:\t')
t2.grid(row=1, column=0)
t3 = tk.Label(win, text='结果\t:')
t3.grid(row=2, column=0)
e2 = tk.Entry(win)
e2.grid(row=1, column=1)
e3 = tk.StringVar()
tk.Label(win, width=20, height=1, bg='white', textvariable=e3).grid(row=2, column=1)


def one():
    b = bin(int(e2.get()))
    e3.set(b)


def two():
    c = oct(int(e2.get()))
    e3.set(c)


def three():
    d = hex(int(e2.get()))
    e3.set(d)


b2 = tk.Button(win, text="二进制", command=one)
b3 = tk.Button(win, text="八进制", command=two)
b4 = tk.Button(win, text="十六进制", command=three)
b2.grid(row=3, column=0)
b3.grid(row=3, column=1)
b4.grid(row=3, column=3)

win.mainloop()

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值