【发布时间】:2021-05-12 10:33:56
【问题描述】:
我正在尝试将字符串拆分为多个变量,最终将每个变量作为指令发送给六个步进电机之一。字符串的格式如下:
D2 R' D' F2 B D R2 D2 R' F2 D' F2 U' B2 L2 U2 D R2 U
问题是字符串中的步长(例如 D2 或 R' 或 B)的长度都不同,因此在调用各个部分时使用步长作为固定长度会产生问题(不同的长度意味着有时我会得到一个解决方案的一部分或一个空格,然后是一个字母)。由于字符串中的步骤数量不同,因此使用解包之类的方法也不起作用。那么,我怎样才能像下面显示的那样切割一个字符串,这样我就可以将每个步骤分配给一个单独的变量?
通过查看上一个问题 (Python - split string into smaller chunks and assign a variable),我意识到我可以按照以下方式做一些事情:
finalstate = input("enter solution: ")
finalstate.split
step = 2
solution_steps = [finalstate[i:i+step] for i in range(0, len(finalstate),step)]
然后像这样调用解决方案的不同部分:
print(Solution_steps[0])
但是,在那个解决方案中,他们希望字符串按确定的长度分隔,而我的会有所不同。
【问题讨论】:
-
split是一个函数,你必须用()调用它。您需要将结果分配给另一个变量。 -
你还没有说分裂应该发生在哪里,或者你期望的最终输出是什么。
-
@sayse 抱歉,我是这个社区的新手,仍在学习提出有意义问题的正确方法。我现在意识到我的问题之前已经得到了回答,但是,作为编码新手,我正在努力寻找我的问题的答案,因为我不确定如何措辞。 Barmar 现在已经解决了我的问题。