练习:Python 的字符串处理, 一个朴实无华的四则运算计算器,批量计算小学生四则运算表达式


Python 官网https://www.python.org/




  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚



等风来,不如追风去……


Python 的字符串处理
朴实无华的四则运算计算器
批量计算小学生四则运算表达式


题目

Python 的字符串处理, 一个朴实无华的四则运算计算器,批量计算小学生四则运算表达式

# -*- coding: UTF-8 -*-
import re

def naive_calc(code):

在这里插入图片描述

def test():
    code = '''
    1+2
    3+4
    5-3
    4*3
    10/2
    '''
    naive_calc(code)

if __name__ == '__main__':
    test()

此题目错误选项忽略了re获取的数字是str的事实,没有用int转换。


  其实,还可以用python内置函数eval()直接转换str.split(“/n”)得来的字符串计算表达式。

效果

在这里插入图片描述

代码:

def naive_calc(code):
    ''' 简单计算器 '''
    return eval(code) # 用python内置函数eval()转换计算表达式字符串为python可执行代码语句。


if __name__ == '__main__':
    codes = '''
    1+2
    3+4
    5-3
    4*3
    10/2
    '''
    tem = [code.strip() for code in codes.split('\n') if code.strip()]
    print('\n\n输入数据:', codes)
    print('\n\n测试数据:', tem, len(tem), '个元素列表。')
    print(f"\n\n依次计算测试计算表达式:\n\n")
    
    for code in tem: # 遍历测试计算表达式。
        print(f"{'':>8}{code.strip()} = {naive_calc(code)}")
    
    print() # 打印空行。

input(' ok '.center(41,'='))

My Up and Down
__上一篇:__ 可爱的 __exit__() 方法

__下一篇:__ 文本小说章回目录及内容提取(Python之list、dict试炼)


我的HOT博:
推荐条件 点阅破千

回目录


老齐漫画头像

精品文章:

来源:老齐教室


回目录

Python 入门指南【Python 3.6.3】

好文力荐:

CSDN实用技巧博文: