你正在非常非常具体地说明你要做什么。如果这是一个练习,其中的说明是,“给定一个5个字符的字符串,创建一个新字符串,其中前两个字符与新字符串中的最后3个字符交替出现”,那么在这种有限的情况下,上面的代码将适用于您。在
然而,如果你正在试图解决一个问题,那么了解你正在试图解决的问题以及你为什么要解决它,这会很有帮助。在
正如en_nuknight所指出的,这个函数不适用于各种输入。一般来说,计算的要点是创建代码,使任务更容易,因为它足够通用,可以用不同的输入多次解决相同的问题。在
一些样式注释:当获取列表的部分时,只需要在不为0时提供起始编号,或者在未通过列表末尾时提供结束编号。所以不是second_part = formula[3:len(formula_chosen)]
你可以简单地写下:
^{pr2}$
其中:后面的空部分表示“将所有内容放到字符串末尾”。在
为了让您了解我所说的编写代码是什么意思,以便它是一个更通用的解决方案,这里有一个函数,它可以对任何长度的字符串执行您所描述的操作:将字符串精确地分成两半,然后交替使用字符。在def alternate_half(input):
output = ""
input_a = input[:len(input)/2]
input_b = input[len(input)/2:]
for pos, char in enumerate(input_b):
output += char
if len(input_a) > pos: