• 面向对象之类的成员


    成员
    class Person:
    def __init__(self, name, num, gender, birthday):
    # 成员变量(实例变量)
    self.name = name
    self.num = num
    self.gender = gender
    self.birthday = birthday

    # 对象来访问(成员方法)(实例方法)
    def marray(self, duifang):
    print("人会结婚%s" % duifang)

    成员: 在类中定义的变量和方法都被成为成员

    变量
    1. 成员变量(实例变量)(字段column) (重点)
    2. 类变量(静态变量) 直接写在类中的. 共享出去的.
    方法
    1. 成员(实例)方法 加了self的.调用的时候。必须用对象去访问. (重点)
    2. 类方法, 当方法需要传递类名的时候. 需要类方法. 规范规则: 在上方加@classmethod
    3. 静态方法, 当你的方法不需要传递当前类的对象的时候。 语法规则:在方法上面加@staticmethod

    面试题: 说一说, 静态方法, 类方法和实例方法的区别.

    属性
    用方法来描述我们的属性信息.
    注意:
    1. @propery 改变一个方法成为属性
    2. 这个方法只能有一个参数, self
    3. 必须有返回值.

    私有
    只能在自己类中访问.

    __方法
    __变量
    __类变量
    都是私有. 比人访问不到. 包括他儿子.

     1 class Pagenation(object):
     2     """
     3     处理分页相关的代码
     4     """
     5 
     6     def __init__(self,data_list,page,per_page_num=10):
     7         """
     8         初始化
     9         :param data_list: 所有的数据
    10         :param page: 当前要查看的页面
    11         :param per_page_num: 每页默认要显示的数据行数
    12         """
    13         self.data_list = data_list
    14         self.page = page
    15         self.per_page_num = per_page_num
    16 
    17     @property
    18     def start(self):
    19         """
    20         计算索引的起始位置
    21         :return:
    22         """
    23         return (self.page-1) * self.per_page_num
    24 
    25     @property
    26     def end(self):
    27         """
    28         计算索引的结束位置
    29         :return:
    30         """
    31         return self.page * self.per_page_num
    32 
    33     def show(self):
    34         result = self.data_list[self.start:self.end]
    35         for row in result:
    36             print(row)
    37 
    38 
    39 data_list = []
    40 
    41 for i in range(1, 901):
    42     data_list.append('alex-%s' % i)
    43 
    44 while True:
    45     # 1. 要查看的页面
    46     page = int(input('请输入要查看的页码:'))
    47     obj = Pagenation(data_list,page)
    48     obj.show()
    面向对象处理网页翻页
  • 相关阅读:
    周鸿祎:很多程序员聪明,但我一看就知道他不会成功
    Ubuntu/centos/redhat/SUSE sipp安装(带rtp支持,3.5.1版本)
    ffmpeg源码分析之媒体打开过程
    搜集的动植物分类、检索网站
    sipp命令 各参数含义
    最简单的一个win32程序
    vi学习笔记
    删除结点 (双向链表)
    插入结点(双向链表)
    La=LaULb (单链表)
  • 原文地址:https://www.cnblogs.com/LW-LW-LW/p/9709660.html
Copyright © 2020-2023  润新知