相关疑难解决方法(0)

通过仅提供"left()"和"right()"作为命令,使用光标通过嵌套列表手动导航?

尽管我在python中写道,但我认为抽象概念对我和其他人来说更有趣.如果你喜欢,那么伪代码请:)

我有一个列表,其中包含我的一个课程中的项目.让我们在这里用字符串和数字来做,这没关系.它嵌套到任何深度.(它实际上不是一个列表,而是一个基于列表的容器类.)

例如: [1,2,3,['a','b','c'] 4 ['d','e',[100,200,300]] 5,['a','b' ,'c'],6]

请注意,['a','b','c']实际上都是同一个容器.如果你改变一个,你改变另一个.可以编辑容器和项目,插入项目和最重要的容器可以多次使用.为了避免冗余,它不可能使列表变平(我认为!),因为你无法在一个容器中插入项目,它会自动出现在所有其他容器中.

问题:针对前端(刚刚与蟒蛇"CMD"命令行模块),我想通过这个结构与游标,它总是指向当前项目,以便它可以读取或编辑导航.光标可以左右(用户的观点),并且应该表现得像列表不是嵌套列表而是扁平列表.

对于人类而言,这非常容易.你只是假装在上面的这个列表中,子列表不存在,只是从左到右依次走.

例如,如果您在上面的列表中处于"3"的位置并向右移动,则将"a"作为下一项,然后是"b","c",然后是"4"等.或者如果您从右边开始"300"你接下来会得到"5".

向后:如果你从"6"左转,那么下一个是'c'.如果你从"5"左转到它的"300".

那么我原则上该如何做呢?我有一种方法,但它的错误,问题已经很长了,我担心大多数人都不会读它:(.我可以稍后发布.

PS即使它很难抗拒:这个问题的答案不是"你为什么要这样做,为什么要用这种方式组织你的数据,为什么不先把我的想法变得平淡无味" ?问题正是我在这里所描述的,没有别的.数据是由问题的本质构成的.

python navigation cursor user-interaction nested-lists

5
推荐指数
1
解决办法
893
查看次数