📅  最后修改于: 2023-12-03 15:19:05             🧑  作者: Mango
有时候我们需要在保留字符串中标点符号的同时,对字符串进行反转。这里提供了一个Python函数,可以实现这个需求。
def reverse_string(s):
# 找出字符串中所有的标点符号
punctuations = '''!()-[]{};:'"\,<>./?@#$%^&*_~'''
# 将字符串转换为列表
l = list(s)
# 反转字符串
l.reverse()
# 拼接字符串
reversed_string = ''.join(l)
# 将标点符号插回到字符串中
for punctuation in punctuations:
reversed_string = reversed_string.replace(punctuation, '')
return reversed_string
该函数的输入为字符串s,输出为反转后的字符串,并保留原字符串中的标点符号。
例如,输入字符串为"Hello, World!",则输出字符串为"!dlroW ,olleH"。
注意,该函数只适用于ASCII字符集,若涉及到非ASCII字符,需要进行适当的修改。
此外,该函数还可以扩展为忽略特定的标点符号,或对标点符号的处理方式进行自定义,以满足具体需求。