python - python中的列表压缩
问题描述
我正在用python制作一个简单的计算器,我有一个问题,但首先是我的代码。
no1, sin , no2 = [str(no1) for no1 in input().split()]
If sin == "+" :
print(int(no1) + int(no2)
我的输出是
5 + 2
7
在这里,您可以看到我在 5 、 + 和 2 之间放置了一个空格,但我不想在它们之间放置空格,但如果这样做会显示错误?
解决方案
如果对组使用正则表达式, re.split 将在输出中保留分隔符:
re.split(" *(\+) *","5+2")
['5', '+', '2']
当您开始解析多个运算符时,它会更容易使用:
re.split(" *([\+\-\*/]) *","51 + 2*38.5 - 8/2")
['51', '+', '2', '*', '38.5', '-', '8', '/', '2']
推荐阅读
- android - 如何在应用程序颤振飞镖上添加谷歌教室等功能
- ruby-on-rails - 运行rails c后的LoadError
- javascript - PeerJS屏幕共享卡在屏幕共享停止
- webpack - Intl Polyfill + Next.js SSR 应用程序
- javascript - 在 Ruby on Rails 中使用 mapbox 保存坐标
- javascript - How to convert an ISO date time to local date in angular using moment libary?
- php - Laravel 7 重定向离开在白页上显示重定向 url
- php - 在 Laravel 的登录表单中显示验证规则的问题
- python - 套索回归预测平均值
- javascript - Cloudfront createDistribution 上的 InvalidArgument 错误