Python 每日一练:等分字符串

2022 年 8 月 12 日
 ppj

Python 每日一练 => 等分字符串

import re

# 'F0-B4-29-98-CE-34'
'-'.join(re.findall(r'.{2}', 'F0B42998CE34'))

使用场景:字符串平均切割、MAC 地址切割等操作。

4244 次点击
所在节点    Python
8 条回复
krixaar
2022 年 8 月 12 日
from textwrap import wrap

# 'F0-B4-29-98-CE-34'
'-'.join(wrap('F0B42998CE34', 2))
ppj
2022 年 8 月 12 日
@krixaar 嗯嗯,多谢哈。
wang9571
2022 年 8 月 12 日
'-'.join(s[x:x+2] for x in range(0, len(s), 2))
Geekgogo
2022 年 8 月 12 日
@krixaar #1 学到老活到老
piglei
2022 年 8 月 12 日
好答案前面有了,我再多贡献一条基于正则的花活。若干年前学自《精通正则表达式》,对于当时的我过于震撼,牢记至今:

>>> s = 'F0B42998CE34'
>>> import re
>>> re.sub(r'(?<=.)(?=(..)+$)', '-', s)
'F0-B4-29-98-CE-34'
luckyc
2022 年 8 月 13 日
string='20220202'
# out put-> 2022-02-02
楼下的请解答
elboble
2022 年 8 月 13 日
''.join([(str[i]+('-' if i%2 and not (i==1 or i == len(str)-1) else '')) for i in range(len(str))])
brucmao
2022 年 8 月 19 日

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/872391

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX