您可以一起使用split
和join
:
s = "classes.students.grades"print '.'.join(s.split('.')[:-1])您正在分割字符串
.-它会给您一个字符串列表,之后您将列表元素重新连接回字符串,用
.
[:-1]将从列表中选择所有元素,但最后一个
要检查最后一个之后是什么
.:
s.split('.')[-1]另一种方法是使用rsplit
。它的工作方式与 split 相同,但是如果提供 maxsplit 参数,它将从末尾开始分割字符串:
rest, last = s.rsplit('.', 1)'classes.students''grades'您也可以使用空字符串 re.sub
替换最后
.一个部分之后的部分:
re.sub('.[^.]+$', '', s)在您的问题的最后一部分中,
[]我建议使用
format
和包装文字
listcomprehension:
''.join("[{}]".format(e) for e in s.split('.'))它会为您提供所需的输出:
[classes][students][grades]



