python - 我想使用 python 和 for 循环制作一个简单的计算器。有什么办法可以让它工作吗?
问题描述
我正在尝试制作一个充当“数字维基百科”的计算器。基本上,它给出了两个数字的信息,包括加、减、乘、除、平方等。对于第一部分,我想使用 for 循环来打印加、减、乘和除部分。这是代码:
def number_wikipedia(x,y):
ops = ['+','-','*','/']
for op in ops:
print(f'{x}{op}{y} =')
我将如何使用类似的方法来打印实际结果?
解决方案
您可以用实际的运算符替换您的运算符字符串,以开始:
import operator
ops = {'+': operator.add, '-': operator.sub, '*': operator.mul, '/': operator.truediv}
然后在你的循环中使用这些:
import operator
def number_wikipedia(x, y):
ops = {'+': operator.add, '-': operator.sub, '*': operator.mul, '/': operator.truediv}
for opname, op in ops.items():
print(f"{x}{opname}{y} = {op(x, y)}")
>> number_wikipedia(2,3)
2+3 = 5
2-3 = -1
2*3 = 6
2/3 = 0.6666666666666666
推荐阅读
- video - AVFrame 数据格式
- c# - Asp .NET MVC 正则表达式
- angular - Angular & eslint - 找不到规则“@typescript-eslint/space-infix-ops”的定义
- ruby-on-rails - 为什么在使用 find_by_sql 时 pluck 仅适用于单个属性?
- python - 尝试从 subreddit 返回随机照片,但机器人也会挑选出不适用于 set_image 的视频提交
- c++ - 枚举类可变参数包以使用二元运算符扩展
- javascript - 来自firebase的数据未映射本机反应
- scala - 在 Confluent Cloud 上将 Snowplow 与 Kafka 连接的问题
- openssl - 获取 tlsv1 警报未知 ca:../ssl/record/rec_layer_s3.c:1528:SSL 警报编号 48,即使验证似乎没问题
- java - 使用 lucene 进行全文搜索