欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

面向对象编程(OPP)思想的python初见

程序员文章站 2024-03-23 18:28:34
...

1初识 Python 面向对象

Python 是一门面向对象的编程语言,所以在 Python 中所有的数据都是对象,例如之前学习到的整数、浮点数、字符串、列表都是对象,关于面向对象的概念不做过多的解释(毕竟现在解释也没啥用,具体等学到面向对象部分在进行说明)。
我们可以给各种对象设计一些 方法,这些 方法 也是广义上的 函数,是不是听起来有些绕,在 Python 中已经为一些基本对象内置了一些方法,从列表开始我们将逐步接触对象的内置方法。

对象方法的调用语法格式为:对象.方法()

2. 快速获取系统内置方法

在实际开发中,我们很难记住一个对象的所有方法,对于橡皮擦来说编写代码的时候也要借助于手册,方法太多不可能记住的,常用的记住就好了,那如何查询一个对象的所有方法呢,用到的是一个内置函数 dir。例如,你想知道一个字符串对象的所有方法,可以编写如下代码。

my_str = "good moring"
print(dir(my_str))
# ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 
'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

代码运行之后,会得到如下内容,其中红框内容就是刚才提及到的方法。
对于某个方法是如何使用的,可以调用之前学习的 help 内置函数进行学习,语法格式如下:help(对象.方法)。例如获取字符串对象的 rfind 方法:

my_str = "good moring"

print(help(my_str.rfind))
# python输出为:
Help on built-in function rfind:
rfind(...) method of builtins.str instance
    S.rfind(sub[, start[, end]]) -> int
    
    Return the highest index in S where substring sub is found,
    such that sub is contained within S[start:end].  Optional
    arguments start and end are interpreted as in slice notation.
    
    Return -1 on failure.
None