在Python中将数学表达式字符串拆分为令牌

发布于 2021-01-29 14:56:50

我有很多Python字符串如"A7*4""Z3+8""B6 / 11",和我想要拆分这些字符串,这样他们将在一个列表,格式["A7", "*", "4"]["B6", "/", "11"]等我已经使用了很多不同的方法分割,但我想我需要只需在有数学符号(例如)的地方执行拆分/,*,+,-。我还需要去除空白。

目前,我正在使用re.split(r'(\D)', "B6 / 11")返回的代码['', 'B', '6', ' ', '', '/', '', ' ', '11']。相反,我想回来["B6", "/", "11"]

关注者
0
被浏览
123
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    从字符串中删除空格后,应拆分字符集 [+-/*]

    >>> import re
    >>> def mysplit(mystr):
    ...     return re.split("([+-/*])", mystr.replace(" ", ""))
    ...
    >>> mysplit("A7*4")
    ['A7', '*', '4']
    >>> mysplit("Z3+8")
    ['Z3', '+', '8']
    >>> mysplit("B6 / 11")
    ['B6', '/', '11']
    >>>
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看