好的问题是,给定分数eg:1/3
,答案0.3333333
应表示为0.(3)
和0.2325555
作为0.232(5)
我找到了一种方法来分割字符串,当它的单个数字重复时:
使用re.findall(r'^(.+?)((.)\3+)$', '42344444' )[0][:-1]
(忽略号码前的0.
)
但我想知道如果模式为0.324324324..
以获取0.(324)
答案 0 :(得分:2)
在+
之后的定期部分添加.
:
>>> re.findall(r'^(.+?)((.+)\3+)$', '42344343434' )[0][:-1]
('42344', '343434')