Python Calculator 1.0

支持功能:add、minus

输入表达式不含括号,允许不加'='

非常简单的一个小计算器,还缺少很多功能,目的是为了练练手。

日后会对其进行更新。

源码

#!/usr/bin/env python3

"""

Name: Python Calculator 1.0

Support: add minus

Created by Chen. 2017/2/8

"""

def calculator(stack):

s1, s2 = [], []

# handle the stack

for i in stack:

if i == '+' or i == '-' :

s1.append(i)

else :

s2.append(int(i))

s3, s4 = [], []

# turn the list

while len(s1) > 0 :

s3.append(s1[-1])

s1.pop()

while len(s2) > 0 :

s4.append(s2[-1])

s2.pop()

# calculate the result

while len(s3) > 0 :

cal, mid = s3[-1], 0

if cal == '+' :

mid = s4[-1]+s4[-2]

s4.pop()

s4.pop()

s4.append(mid)

elif cal == '-' :

mid = s4[-1]-s4[-2]

s4.pop()

s4.pop()

s4.append(mid)

s3.pop()

return s4[-1]

def main():

print('Python Calculator 1.0')

calstr = input()

mid, s1 = '', []

for i in range(len(calstr)) :

if (calstr[i] == '+' or calstr[i] == '-' or calstr[i] == '=') and i != 0:

if mid != '' :

s1.append(mid)

mid = ''

s1.append(calstr[i])

else :

mid = mid + calstr[i]

if mid != '' :

s1.append(mid)

if s1[-1] == '=' : # delete '='

s1.pop()

res = calculator(s1)

print(res)

if __name__ == '__main__':

main()

2017/2/8

python实现一个简单的加法计算器_Python简易项目 加减计算器的实现相关推荐

  1. python编写一个简单的程序验证码_Python实现一个简单的验证码程序

    老师讲完random函数,自己写的,虽然和老师示例的不那么美观,智能,但是也自己想出来的,所以记录一下,代码就需要自己不断的自己练习,实战,才能提高啊!不然就像我们这些大部分靠自学的人,何时能学会.还 ...

  2. python实现一个简单的加法计算器_Python tkinter实现简单加法计算器代码实例

    tkinter 是 Python 的标准 GUI 库.Python 使用 tkinter 可以快速的创建 GUI 应用程序.由于 tkinter 是内置到 python 的安装包中.只要安装好 Pyt ...

  3. 用python画一个简单卡通人物画法_Python绘制可爱的卡通人物 | 【turtle使用】

    微信公众号:AI算法与图像处理若是你以为对你有帮助,欢迎关注.转发以及点赞哦-( ̄▽ ̄-)~ Turtle库 简介 什么是Turtle 首先,turtle库是一个点线面的简单图像库,可以完成一些比较简 ...

  4. 用python做一个简单的投票程序_Python——开发一个自动化微信投票器【附代码实例方法】...

    一个研究Python实践,最近研究一个投票的东东,主要是想测试利用Python实现刷微信投票. 本文纯粹为了记录一下 webdriver直接操作页面按钮的方法: #!/usr/bin/python # ...

  5. 用python写一个简单的网页游戏_python模拟点击玩游戏的实例讲解

    小编发现很多小伙伴都喜欢玩一些游戏,而手游因为玩的场景限制不多,所以受众的人更多.游戏里有很多重复的任务需要我们完成,虽然过程非常无聊,但是为了任务奖励还是有很多小伙伴不厌其烦的去做.那么,有没有什么 ...

  6. 用python画一个简单卡通人物图片_Python绘制可爱的卡通人物 | 【turtle使用】

    Turtle库 简介 什么是Turtle 首先,turtle库是一个点线面的简单图像库,能够完成一些比较简单的几何图像可视化.它就像一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始 ...

  7. 用python做一个上位机串口通信_PYTHON制作画加书法源程序

    from turtle import * from random import * from math import * def tree(n,l): pd()#下笔 #阴影效果 t = cos(ra ...

  8. 使用python做一个简单的计算器

    今天教大家如何使用python撸一个简单的计算器小程序. 具体源码如下: import tkinter import math import tkinter.messageboxclass Calcu ...

  9. 【Python】如何用python做一个简单的输入输出交互界面?

    看到知乎上有人在问,如何使用Python做一个简单的输入输出交互界面? 交互界面就涉及到GUI编程. Python有很多GUI框架,功能大同小异. 其中比较出名的有「PyQT」.**wxPython. ...

最新文章

  1. isotope == parallax 例子
  2. 必读 | 六月份不容错过的十大重磅好文,机器学习和数据科学的小伙伴拿走不谢 原创 2017-07-10 爱收藏的 AI科技大本营 作者 | Flavian Hautbois 翻译 | AI科技大
  3. 如何在page_load方法判断是服务器端控件引发的page_load方法
  4. python学习之路基础篇(第八篇)
  5. L - Lookup Performance(主席树)
  6. 前端学习(2928):昨日回顾
  7. uva oj 567 - Risk(Floyd算法)
  8. setTimeout、setInterval解刨
  9. 【C语言 基础】什么流程控制?
  10. hdu 1506 单调栈问题
  11. 解析 URP 教务系统, 创建查成绩 APP !
  12. 设备信息管理系统(C语言)
  13. OPPO以数字普惠金融助力小微企业
  14. 人工智能系列电子书分享
  15. 彻底解决CUDA安装,从翻译文档开始_Compiling CUDA Programs
  16. CPU 到底是怎么识别代码的?
  17. Sharepoint2007自定义Feature(2)--使用Sharepoint自定义Featur
  18. 人脸验证:Lightened CNN
  19. nginx rtmp 服务搭建
  20. 《Parcel打包工具的使用》

热门文章

  1. CSDN博客如何显示空白符
  2. 学习MySQL / MariaDB初学者 - 第1部分
  3. LinkedIn 详细介绍了他们开源的 Kafka Monitor
  4. cookie保存分页参数
  5. asp.net 防止重复提交
  6. 如何让程序员喜欢上编码
  7. 56PY宿迁味道这么可口
  8. 程序猿,该在一个公司呆多久?
  9. nanshan 钥匙在您那儿的
  10. 今天的一切准备就绪的局域网聊天