2022年 11月 3日

Python字符串逆序输出(六种方法)

1直接使用字符串切片功能逆转字符串

2将字符串转换为列表使用reverse函数

3新建一个列表,从后往前添加元素

4借助于collections模块现成的方法extendleft

5递归实现

6借助基本的Swap操作,以中间为基准交换对称位置的字符

代码如下:

  1. str1 = "string"
  2. # 1直接使用字符串切片功能逆转字符串
  3. print(str1[::-1])
  4. # 2将字符串转换为列表使用reverse函数
  5. str1_list = list(str1)
  6. str1_list.reverse()
  7. print(''.join(str1_list))
  8. # 3新建一个列表,从后往前添加元素
  9. str1_list = []
  10. for i in range(len(str1)-1,-1,-1):
  11. str1_list.append(str1[i])
  12. print(''.join(str1_list))
  13. # 4借助于collections模块现成的方法extendleft
  14. import collections
  15. cd1 = collections.deque(str1)
  16. cd2 = collections.deque()
  17. for char in cd1:
  18. cd2.extendleft(char)
  19. print(''.join(cd2))
  20. # 5递归实现
  21. def rec(string):
  22. if len(string) != 1:
  23. rec(string[1:])
  24. print(string[0], end='')
  25. rec(str1)
  26. # 6借助基本的Swap操作,以中间为基准交换对称位置的字符
  27. str_list = list(str1)
  28. len_str = len(str_list)
  29. i = 0
  30. while i < len_str / 2:
  31. str_list[i], str_list[len_str - i - 1] = str_list[len_str - i - 1], str_list[i]
  32. i += 1
  33. print(''.join(str_list))