提问,设计一个字符串函数reverse(s),它返回字符串s的反串,例如reverse("abc")返回"cba",这个总是跑的结果出现None是为什么

Python初级练习相关问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 梦幻精灵_cq 2022-11-22 01:03关注
您定义函数函数代码没有错,但没有返值。python函数默认返回None,即没有return语句,返回None。加上 return t语句就好了。
#!/usr/bin/nve python # coding: utf-8 def reverse(s): t = '' for i in range(len(s)-1, -1, -1): t += s[i] return t if __name__ == '__main__': print(reverse('abcde'))
您那个自定义函数,还可以如下定义:
一、切片。
详情请点阅我2022-11-08发布的学习笔记“Python之魔幻切片”
def reverse(s): return s[::-1] # 负整数步长切片,返回反转序列。
二、利用list.pop()方法模拟出栈操作。
def reverse(s): lis = list(s) return ''.join((lis.pop() for i in s))
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用