weixin_49369658
BeacherHou
2021-02-22 20:59
采纳率: 100%
浏览 22

为什么我的python程序比较完1, 2, 3后输出None???

为什么我的python程序比较完1, 2, 3后输出None

# 时间:2021.2.22
# 功能:输入一个整数或浮点数列表,输出其中最大的值


def find_biggest(my__list):
    # 功能:输入一个整数或浮点数列表,输出其中最大的值
    # 形参:my__list[list]:需要比较的整数或浮点数列表
    # 返回:r__intorfloat[int or float]:最大的值
    my__list = my__list[:]
    print(my__list)
    if len(my__list) > 1:
        # 当还未比较完时,继续排除
        if my__list[0] > my__list[1]:
            # print(my__list[1])
            del[my__list[1]]
            find_biggest(my__list)
        elif my__list[0] == my__list[1]:
            # print(my__list[0])
            del[my__list[0]]
            find_biggest(my__list)
        else:
            # print(my__list[0])
            del[my__list[0]]
            find_biggest(my__list)
    else:
        # print(my__list[0])
        return my__list[0]


if __name__ == '__main__':
    print(find_biggest([1, 2, 3]))
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • leop7
    leop7 2021-02-23 11:18
    已采纳
    def find_biggest(my__list):
        # 功能:输入一个整数或浮点数列表,输出其中最大的值
        # 形参:my__list[list]:需要比较的整数或浮点数列表
        # 返回:r__intorfloat[int or float]:最大的值
        my__list = my__list[:]
        print(my__list)
        if len(my__list) > 1:
            # 当还未比较完时,继续排除
            if my__list[0] > my__list[1]:
                # print(my__list[1])
                del[my__list[1]]
                find_biggest(my__list)
            elif my__list[0] == my__list[1]:
                # print(my__list[0])
                del[my__list[0]]
                find_biggest(my__list)
            else:
                # print(my__list[0])
                del[my__list[0]]
                find_biggest(my__list)
            
        else:
            # print(my__list[0])
            print( my__list[0])
     
     
    if __name__ == '__main__':
        find_biggest([1, 2, 3])
    

    改成这样即可

    点赞 评论
  • PY0312
    Nick Peng 2021-02-23 09:20

    你的if条件流程结束没有return呀,默认是return None的

    点赞 评论

相关推荐