递归赋值

2024-03-29

def swap(aList):

  if len(aList) == 0:
      return 0
  elif len(aList) == 1:
      print(aList[0])
      return aList[0]
  return aList[0] + swap(aList[2:])

aList = [["abcdefgh"]]

swap(aList)

上面的代码打印,但它按顺序打印 a 列表,从 a-h。 像这样: “abcdefgh”

我需要反向打印每两个字母;像这样: “坏cfehg”


为什么使用二维数组?您只是交换其成员(一维数组)而不是字符串中的字符。只需传入字符串本身 - 索引运算符就可以访问每个字符。另外,请记住+运算符是不可交换的对于字符串:

def swap(s):
   if len(s) == 0:
      return ""
   elif len(s) == 1:
      return s
   return s[1] + s[0] + swap(s[2:])

print(swap("abcdefgh")) # --> badcfehg
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

递归赋值 的相关文章

随机推荐