50行python代码写个计算器教程
案例展示
你能学到
input 用户输入
print输出
tkinter图形界面
python运算符号
基础知识准备
运算符号
数字运算,求和我们使用了加号 (+)运算符,除此外,还有 减号 (-), 乘号 (*), 除号 (/), 地板除 (//) 或 取余 (%)。
input输入
在python中咱们用input
来获取用输入的内容,
默认input只能获取文本,想要转换为数字需要用int
函数把字符串转换为字符
输出
我们在python3中用print
方法输出
tkinter图形界面
Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。
由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。
基础版本
案例展示
# 打印标题
print("简易计算器")# 通过用户输入获取运算的第一个数
num1 = int(input("输入第一个数字: "))
# 通过用户输入获取运算的第二个数
# 默认是字符串需要用int把字符转换为数组
num2 = int(input("输入第二个数字: "))# 提示用户输入运算符
print("输入运算:1、相加;2、相减;3、相乘;4、相除")# 获取用户输入的运算符号
choice = input("输入你的选择(1/2/3/4):")# 如果是1
if choice == '1':print(num1,"+",num2,"=", num1+num2)
# 如果2
elif choice == '2':print(num1,"-",num2,"=", num1-num2)
elif choice == '3':print(num1,"×",num2,"=", num1*num2)
elif choice == '4':print(num1,"÷",num2,"=", num1/num2)
# 其他都是非法的
else:print("非法输入")
特别注意:
input提示输入的时候,用户需要在电脑键盘输入数字
我们通过用int方法把输入的数字转换为真正的数字(默认是像数字的字符)
根据choice的不同来选择输出不同的内容
在程序的世界 除用
/
,乘 用*
来表示
极简版本
# 获取用户输入的运算式如:5+5
str = input("请输入你的运算式:")# eval函数把字符串当代码执行
# print 打印输出执行的结果
print(eval(str))
注意:
input获取的内容为文本
eval 可以把任意的字符串当做python执行
如果需要程序一直都运行我们只需要把代码放入while循环就可
while True:str = input("请输入你的运算式:")print(eval(str))
注意:
True 的T 字母是大写
str与print函数前面有四个空格,或者一个Tab缩进
计算器(有界面)
# 导入tkineter库
import tkinter# 获取一个窗口
window = tkinter.Tk()
# 设置标题
window.title('计算器')
# 设置窗口大小
window.geometry('200x200')# 输入方法
def add(n):# 获取到n1文本框的值n1 = inp.get()# 清空文本框inp.delete(0,len(n1))# 插入原来的加上新输入参数ninp.insert(0,n1+str(n))# 执行计算方法
def calc():n1 = inp.get() inp.delete(0,len(n1))# 把文本框的字符串用eval当代码执行一次,再插入到文本框inp.insert(0,str(eval(n1)))# 清空文本框
def clear():n1 = inp.get() inp.delete(0,len(n1))# 删除最后一个字符
def back():n1 = inp.get() inp.delete(len(n1)-1,len(n1))# 计算绝对值
def ab():n1 = inp.get() inp.delete(0,len(n1))inp.insert(0,str(eval(n1)*-1))# 设置一个文本框
inp = tkinter.Entry(window, width=25)
# 在第0行,第0个,合并5列
inp.grid(row=0,column=0,columnspan=5)# 用for循环 创建 123 456 789 9个按钮
for i in range(0,3):for j in range(1,4):n = j+i*3btn=tkinter.Button(window, text=str(j+i*3),width=5, command=lambda n=n:add(n))btn.grid(row=i+2,column=j-1)
# 删除按钮(窗口,宽度,文本,执行命令).grid(1行,0列)
tkinter.Button(window,width=5, text="C", command=clear).grid(row=1,column=0)
tkinter.Button(window,width=5, text="←", command=back).grid(row=1,column=1)
tkinter.Button(window,width=5, text="+/-", command=ab).grid(row=1,column=2)# 删除按钮(窗口,宽度,文本,背景色,文本颜色,执行命令并传入参数).grid(1行,4列)
tkinter.Button(window,width=5, text="+",bg="#f70",fg="#fff",command=lambda:add("+")).grid(row=1,column=4)
tkinter.Button(window,width=5, text="-", bg="#f70",fg="#fff",command=lambda:add("-")).grid(row=2,column=4)
tkinter.Button(window,width=5, text="×",bg="#f70",fg="#fff",command=lambda:add("*")).grid(row=3,column=4)
tkinter.Button(window,width=5, text="÷",bg="#f70",fg="#fff",command=lambda:add("/")).grid(row=4,column=4)
tkinter.Button(window,width=12,text="0", command=lambda:add("0")).grid(row=5,column=0,columnspan=2)
tkinter.Button(window,width=5,text="=", bg="#f70",fg="#fff",command=calc).grid(row=5,column=4)
tkinter.Button(window,width=5, text=".", command=lambda:add(".")).grid(row=5,column=2)# 进入消息循环
window.mainloop()
注意
eval
把字符串当python代码执行len()
方法计算字符串长度inp.get()
获取到文本框的值inp.delete(start,end)
删除文本框的字符从start个删除到end个inp.insert(start,str)
插入文本框字符 从start插入str字符
- EOF -
推荐阅读 点击标题可跳转
★Python100行-贪吃蛇小游戏
用VScode愉快的写python代码
用python打包exe应用程序-PyInstaller
★教你用Python画了一棵圣诞树
20行python代码的入门级小游戏
10行python代码做出哪些酷炫的事情?
一行Python代码能做出哪些神器的事情
都来到这了,拜托拜托点个赞
50行python代码写个计算器教程相关推荐
- python text insert()背景色_50行python代码写个计算器教程
案例展示 计算器.gif 你能学到 input 用户输入 print输出 tkinter图形界面 python运算符号 基础知识准备 运算符号 数字运算,求和我们使用了加号 (+)运算符,除此外,还有 ...
- 如何使用 50 行 Python 代码制作一个计算器
简介 在这篇文章中,我将向大家演示怎样向一个通用计算器一样解析并计算一个四则运算表达式.当我们结束的时候,我们将得到一个可以处理诸如 1+2*-(-3+2)/5.6+3样式的表达式的计算器了.当然,你 ...
- 如何制作python代码_如何使用50行Python代码制作一个计算器
(点击上方公号,可快速关注) 作者:Stories For Sad Robots 译者:开源中国社区 链接:http://www.oschina.net/translate/how-to-write- ...
- python写一个游戏多少代码-使用50行Python代码从零开始实现一个AI平衡小游戏
集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何用 50 行 Python 代码创建一个 AI,使用增强学习技术,玩耍一个保持杆子平衡的小游戏.所用环境为标准的 OpenAI Gym, ...
- 50行python游戏代码_使用50行Python代码从零开始实现一个AI平衡小游戏
使用50行Python代码从零开始实现一个AI平衡小游戏 发布时间:2020-10-23 09:26:14 来源:脚本之家 阅读:74 集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何 ...
- python50行小游戏_使用50行Python代码从零开始实现一个AI平衡小游戏
集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何用 50 行 Python 代码创建一个 AI,使用增强学习技术,玩耍一个保持杆子平衡的小游戏.所用环境为标准的 OpenAI Gym, ...
- 愿你是那天上星,永远闪耀照亮夜空——50行Python代码绘制满天星
今天用50行Python代码绘制了星空满天的动图.解释下为什么要做这样一件事,因为今天是空军成立72周年纪念日,希望通过这样的方式去表达出每个年轻人都向往像星空中的一颗星星,散发着自己的光芒照亮整个夜 ...
- 50行Python代码玩转微信小游戏颜色王者
50行Python代码玩转微信小游戏"颜色王者" 游戏模式 在微信小程序里搜索"颜色王者",即可找到该游戏. 游戏的目标比拼色彩敏感度.点击图片中不一样的色块即 ...
- 50行python代码打造一款女友监控器_手把手教你50行Python代码,给心目中的女友微博秒评论...
突然觉得,现在发微博已经成为当代青年的潮流,或分享自拍美照,或分享美食美景,小编的女朋友也不例外,平时爱分享一些我俩生活的趣事. 但是她最近开始给我抱怨我从来不给她的微博评论,我作为骨灰级" ...
- python 按钮更改输入框的值_利用 50 行 Python 代码构建一个在线文本生成器!
本指南将引导你学习构建一个自动完成任意输入文本的Web应用程序. 作者 | Dev Sharma译者 | 苏本如,责编 | 郭芮出品 | CSDN(ID:CSDNnews) 以下为译文: 在本文中,我 ...
最新文章
- Android WebView 加载http网址的h5 不显示
- C语言开发单片机如何避免全局变量过多混乱
- 数组与字符串三(Cocos2d-x 3.x _Array容器)
- CF、FM、DSSM、DeepFM等这些推荐模型的原理以及使用场景是什么?
- 启动万维网发布服务(W3SVC)
- CityEngine生成不等间距桥墩
- jsp javabean mysql_jsp mysql JavaBean
- android webserver mysql,Android手机变身Web服务器,BitWebServer简单评测
- Python之通过url抓取pickle文件
- 此计算机中未配置默认浏览器,飞火浏览器设置默认浏览器失败了怎么办-飞火浏览器设置默认浏览器的方法 - 河东软件园...
- 375.猜数字大小II
- 【JAVA】java中CyclicBarrier的使用方法,实例解说
- 【转载】回顾中国股市十年市盈率,我们还看得见希望吗?
- 通过相关系数和自由度求置信度
- excel两列数据对比找不同_对比excel,轻松学习python数据分析
- 拖拉机服务器不稳定,手扶拖拉机机油指示不稳定现象分析
- 【Excel】如何使用RegexString正则表达式
- 湖北大学计算机学院胡院长,胡书山-湖北大学计算机与信息工程学院
- 什么是桶(bucket)?什么是度量(metrics)?
- 网络显示已连接,但是无网络解决办法
热门文章
- php9.0论坛搭建默认,phpwind9.0
- 冰河木马实验(V8.4)
- Dataformatstring属性设置(详解)
- emWin—数字软键盘
- 音创点歌机_音创点歌系统_音创KTV点歌系统下载- 下载之家
- 诺基亚Ovi商店开卖《水果忍者》
- 小鸡模拟器android怎么玩,小鸡模拟器使用常见问题解决办法_模拟器使用FAQ_3DM手游...
- 新曼联:弗格森制造 第七章 欧战惊喜 之4 安心之选:埃尔文
- idm种子资源下不动 idm种子怎么下载详细教程
- 微信台配置那服务器,微信配置