美文网首页
Python使用函数作为参数

Python使用函数作为参数

作者: eeert2 | 来源:发表于2020-04-28 21:41 被阅读0次

    Java这种静态语言中,我们使用接口开发,在接口中指定需要实现的函数/功能。然后将接口实现类的对象作为参数。在对象参数上调用函数。

    Python中,没有接口的说法,我们直接将函数作为参数传递,大大简化了Python的代码量。

    举个例子:
    Java中,要实现排序,则需要实现compareble接口,然后在接口中实现.compareTo()函数。

    Python中,使用排序sorted()函数,则只需要传入key函数

    class Student:
        """待排序对象"""
        def __init__(self, name, age):
            self.name = name
            self.age = age
    
        def __str__(self):
            return self.name
    
        def __repr__(self):
            return self.__str__()
    
    def func_key(student):
        """Student 的排序函数"""
        return student.age
    
    
    if __name__ == '__main__':
        data = [Student('李宁', 18), Student('韩梅梅', 19), Student('小美', 16)]
        print(data)  # [李宁, 韩梅梅, 小美]
    
        new_data = sorted(data, key=func_key)
        print(new_data)  # [小美, 李宁, 韩梅梅]
    

    相关文章

      网友评论

          本文标题:Python使用函数作为参数

          本文链接:https://www.haomeiwen.com/subject/ojiewhtx.html