def count_items(lst):
# 如果列表为空,则返回0
if not lst:
return 0
# 如果列表非空,则将列表的第一项剥离,并添加1,再递归处理剩余列表
return 1 + count_items(lst[1:])
# 测试函数
lst = [1, 2, 3, "hello", None, True, [1, 2, 3]]
print(count_items(lst)) # 输出: 7
在上述代码中,我们定义了一个名为count_items的递归函数。如果列表为空,则返回0表示项数为0。否则,我们从列表中剥离第一个元素,并递归调用这个函数处理剩余的元素。将计算出的项数(1)与递归调用返回的项数相加,最终得出整个列表的项数。