在python中,如何迭代字符串,并在不同的位置将其拆分?

在python中,如何迭代字符串,并在不同的位置将其拆分?,python,string,math,Python,String,Math,我正试图为Kaprekar数写一个快速的解决方案,向我的一个朋友展示在Python中实现这样的东西是多么容易。我知道如何执行所有步骤,除了将平方数作为字符串进行迭代。例如,45是Kaprekar数,因为 45**2=2025和20+25=45 我试图编写的代码将取45**2=2025的结果,并让我迭代如下组合 ['2','025'] ['20','25'] ['202','5']我将在炼狱里多呆几天,回答伊格纳西奥已经回答过的数学问题,但你也可以尝试以下一些变体: >>> s

我正试图为Kaprekar数写一个快速的解决方案,向我的一个朋友展示在Python中实现这样的东西是多么容易。我知道如何执行所有步骤,除了将平方数作为字符串进行迭代。例如,45是Kaprekar数,因为

45**2=2025和20+25=45

我试图编写的代码将取45**2=2025的结果,并让我迭代如下组合

['2','025']

['20','25']


['202','5']

我将在炼狱里多呆几天,回答伊格纳西奥已经回答过的数学问题,但你也可以尝试以下一些变体:

>>> s = '2025'
>>> for i in range(1, len(s)):
...   print s[:i], s[i:]
... 
2 025
20 25
202 5
>>> a = 2025
>>> for i in range(1,4):
...     print a / 10**i, a % 10**i
... 
202 5
20 25
2 25

这正是我之前打算发布的内容,因为工作分散了我的注意力。谢谢你参考Kaprekar的数字。这启发了新的Rosetta代码任务:我测试了它,它也可以工作,我喜欢Ignacio的解决方案只是为了可读性