python - 如何在字符串中切换算术运算
问题描述
尝试在 Python 中切换字符串中所有算术运算的符号时遇到问题。
我的输入看起来像这样:"+1-2"
输出应该是这样的:"-1+2"
但是当我尝试用replace()
函数替换字符时:
"+1-2".replace("+", "-").replace("-", "+")
我得到的输出是:'+1+2'
看起来这些replace
功能正在同时替换所有东西,所以它永远不会以这种方式正确切换它。具有类似功能的单线解决方案将非常有帮助。
解决方案
使用str.translate
:
s = "+1-2+3+4-2-1"
t = str.maketrans('+-','-+')
print(s.translate(t))
输出:
-1+2-3-4+2+1
推荐阅读
- javascript - 在使用 vue 路由器更改到另一个路由器位置之前,允许当前窗口滚动到顶部
- reactjs - 使用 shouldComponentUpdate 时删除子组件
- javascript - 我最近开始使用 HTML 进行编程,所以在将脚本添加到代码后,我不知道如何重新加载页面以使脚本运行
- java - Java Servlet - 上传没有名称的文件
- python - Python PyTesseract 精度改进
- android - Firebase RecyclerView 未显示任何数据
- javascript - 从 JQuery 转换为纯 Javascript
- python - Django 3.2 模型未在注册函数中正确实例化
- unicode - 如何确定 UTF-16 字符的字节宽度?
- node.js - 在 Mongo、Express、Node 中使用附加信息创建模型之间的关系