使用Python将字符串标记为嵌套数组列表

Noi Sek

编写本文档之后,我将为Brainfuck编写一个解释器,在我的实现中,它需要将字符串转换为:

',>,<[>[->+>+<<]>>[-<<+>>]<<<-]>>.'

变成这样的指令列表:

[',', '>', ',', '<', [ '>', [ '-', '>', '+', '>', '+', '<', '<', ], '>', '>', [ '-', '<', '<', '+', '>', '>', ] '<', '<', '<', '-' ], '>', '>', '.']

或减去符号:

[ ... [...] ... [...] ... ]

现在,我正在使用deque和popleft()递归地解决此问题,一次遍历字符串中的一个符号,但我觉得我应该一次将其分解为子数组。

您将如何以Python方式解决此问题?

(出于速度原因排除正则表达式)

何塞·里卡多·布斯托斯M.

这并不是一种“ Pythonic方式”,但是....我使用递归和生成器找到了解决问题的方法

s = ',>,<[>[->+>+<<]>>[-<<+>>]<<<-]>>.'

def brainfuck2list(brainfuck):
  while brainfuck:               #if list is empty then finish
    e = brainfuck.pop(0)
    if e not in ("[","]"):
      yield e
    elif e == "[":
      yield list(brainfuck2list(brainfuck))
    else:
      break

[_ for _ in brainfuck2list(list(s))]

您得到以下输出

[
  ',', '>', ',', '<', 
  [
    '>', 
    [
      '-', '>', '+', '>', '+', '<', '<'
    ]
    , '>', '>', 
    [
      '-','<', '<', '+', '>', '>'
    ], 
    '<', '<', '<', '-'
  ]
  , '>', '>', '.'
]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从嵌套数组将数组解析为字符串

来自分类Dev

将嵌套数组字符串解析为数组

来自分类Dev

将字符串分解为嵌套数组

来自分类Dev

PHP:将字符串转换为嵌套数组

来自分类Dev

将字符串转换为嵌套数组

来自分类Dev

导入嵌套数组字符串作为Django / Python中的列表

来自分类Dev

使用JavaScript将以字符串形式存储的嵌套数组转换回嵌套数组

来自分类Dev

使用 push MongoDB 将字符串添加到嵌套数组

来自分类Dev

字符串到嵌套数组

来自分类Dev

将逗号分隔的字符串转换为嵌套数组,RegExp?

来自分类Dev

jQuery:将属性值转换为嵌套数组(字符串转换为数字)

来自分类Dev

将嵌套数组的字符串表示形式转换为Array

来自分类Dev

PHP - 将动态字符串模式格式化为嵌套数组

来自分类Dev

如何使用JSON.NET使用值的嵌套数组创建JSON字符串?

来自分类Dev

PHP从字符串构造嵌套数组

来自分类Dev

基于拆分字符串的嵌套数组

来自分类Dev

Javascript字符串到嵌套数组

来自分类Dev

JavaScript:如何从字符串创建嵌套数组

来自分类Dev

如何使用字符串从嵌套数组中获取值

来自分类Dev

使用嵌套数组反序列化JSON以从值生成字符串

来自分类Dev

使用蹦床从嵌套数组创建树并将其隐式转换为字符串

来自分类Dev

在PHP中使用嵌套数组进行字符串解析

来自分类Dev

在 Javascript 中使用递归查找嵌套数组中最长的字符串?

来自分类Dev

python使用字符串和整数将嵌套列表大写

来自分类Dev

使用嵌套数组将集合插入列表

来自分类Dev

python将整数嵌套列表的字符串表示形式转换为整数嵌套列表

来自分类Dev

如何基于javascript中的字符串数组创建嵌套数组?

来自分类Dev

Django-仅将字符串/用户输入的特定部分标记为安全?

来自分类Dev

将一些XIB / Storyboard字符串标记为不可本地化

Related 相关文章

  1. 1

    从嵌套数组将数组解析为字符串

  2. 2

    将嵌套数组字符串解析为数组

  3. 3

    将字符串分解为嵌套数组

  4. 4

    PHP:将字符串转换为嵌套数组

  5. 5

    将字符串转换为嵌套数组

  6. 6

    导入嵌套数组字符串作为Django / Python中的列表

  7. 7

    使用JavaScript将以字符串形式存储的嵌套数组转换回嵌套数组

  8. 8

    使用 push MongoDB 将字符串添加到嵌套数组

  9. 9

    字符串到嵌套数组

  10. 10

    将逗号分隔的字符串转换为嵌套数组,RegExp?

  11. 11

    jQuery:将属性值转换为嵌套数组(字符串转换为数字)

  12. 12

    将嵌套数组的字符串表示形式转换为Array

  13. 13

    PHP - 将动态字符串模式格式化为嵌套数组

  14. 14

    如何使用JSON.NET使用值的嵌套数组创建JSON字符串?

  15. 15

    PHP从字符串构造嵌套数组

  16. 16

    基于拆分字符串的嵌套数组

  17. 17

    Javascript字符串到嵌套数组

  18. 18

    JavaScript:如何从字符串创建嵌套数组

  19. 19

    如何使用字符串从嵌套数组中获取值

  20. 20

    使用嵌套数组反序列化JSON以从值生成字符串

  21. 21

    使用蹦床从嵌套数组创建树并将其隐式转换为字符串

  22. 22

    在PHP中使用嵌套数组进行字符串解析

  23. 23

    在 Javascript 中使用递归查找嵌套数组中最长的字符串?

  24. 24

    python使用字符串和整数将嵌套列表大写

  25. 25

    使用嵌套数组将集合插入列表

  26. 26

    python将整数嵌套列表的字符串表示形式转换为整数嵌套列表

  27. 27

    如何基于javascript中的字符串数组创建嵌套数组?

  28. 28

    Django-仅将字符串/用户输入的特定部分标记为安全?

  29. 29

    将一些XIB / Storyboard字符串标记为不可本地化

热门标签

归档