Python中的字串反轉
阿新 • • 發佈:2019-01-05
效能最佳者
推薦方法,使用切片:slice
def reversed_string(a_string):
return a_string[::-1]
可讀性強
def reverse_string_readable_answer(string):
return ''.join(reversed(string))
中規中矩
這種做法其實非常不推薦的,因為,記住,Python中字串是不可變的——針對下面的演算法,乍看起來像在的new_string上新增一個字元,但理論上它每次都建立一個新字串!(一定程度上,各個IDE可能會一定程度針對此做一定的編譯優化)
def reverse_a_string_slowly(a_string):
new_string = ''
index = len(a_string)
while index:
index -= 1 # index = index - 1
new_string += a_string[index] # new_string = new_string + character
return new_string
中規中矩最佳實踐
def reverse_a_string_more_slowly (a_string):
new_strings = []
index = len(a_string)
while index:
index -= 1
new_strings.append(a_string[index])
return ''.join(new_strings)