编写一个递归函数,检查输入的一个列表是否为升序排列,输入的数据以英文逗 号分隔开。Python写需要注释
时间: 2024-03-25 17:39:18 浏览: 18
好的,下面是 Python 代码注释版:
```python
def is_sorted(lst):
"""
递归函数,检查输入的一个列表是否为升序排列
参数:
lst -- 输入的列表
返回值:
如果列表是升序排列,返回 True;否则返回 False
"""
# 如果列表长度小于等于 1,认为是升序排列,返回 True
if len(lst) <= 1:
return True
# 否则,判断列表的第一个元素是否小于等于第二个元素,并递归调用自己,传入列表中除了第一个元素之外的所有元素
else:
return lst[0] <= lst[1] and is_sorted(lst[1:])
```
这个函数使用了 Python 的 docstring 来进行函数说明和参数说明。在函数内部,首先判断列表长度是否小于等于 1,如果是,直接返回 True;否则,判断列表的第一个元素是否小于等于第二个元素,并递归调用自己,传入列表中除了第一个元素之外的所有元素。如果递归调用的结果也返回 True,则说明整个列表是升序排列,返回 True;否则返回 False。
你可以调用这个函数来检查任何一个列表是否为升序排列,例如:
```python
lst = [1, 2, 3, 4, 5]
print(is_sorted(lst)) # True
lst = [5, 4, 3, 2, 1]
print(is_sorted(lst)) # False
lst = [1, 3, 2, 4, 5]
print(is_sorted(lst)) # False
```