python - python - 当元素在python列表中为“-”时,如何将当前元素与下一个元素组合?
问题描述
我根据空间将一个字符串拆分为一个列表。当元素值为“-”时,我想将它与下一个元素结合起来。
例如,
['x^3', 'x', '-', '4']
想变身['x^3', 'x', '-4']
。
['-', 'x^3', 'x', '-', '4']
想变身['-x^3', 'x', '-4']
。
b = "x^3 + x - 4".split(" ")
b = [x for x in b if x != '+']
#combine "-" with next element
解决方案
的replace
方法str
会很有用:
s = "x^3 + x - 4"
new_s = s.replace('- ', '-').replace('+ ', '')
b = new_s.split(" ")
这比使用for
循环更优雅。
顺便说一句,避免使用for
循环append
,list
如果可以使用列表推导,因为重复调用append
方法比列表推导慢得多。
推荐阅读
- scipy - 解释 scipy 差分进化中 tol 参数的直觉
- angular - CanActivate:带有套接字侦听器的可观察布尔值
- typescript - 将不记名令牌发送到 autorest typescript 客户端
- c++ - 使用 Pthread 的 Xcode 错误:线程 2 信号 SIGABRT
- agile - 计算速度的建议
- python-3.x - 从列表中取出特定文本并将其作为字符串分配给不同的变量
- verilog - 为什么 RTL 设计中 Ram 或 FIFO 的深度总是地址宽度的 2 倍?
- python - 将调色板颜色的 16x16 真彩色图像转换为实际的调色板文件
- html - 屏幕中间的中心表格
- java - DBsetup 后 Spring 数据不会增加