Python第四章(朝思暮想是对象)

目录

4.1轻松看对象

4.2继承者们

4.3那些年,错过的对象

4.4意想不到的对象



4.1

4.12类

class bird(object):

    feather=True

    raproduction="egg"

class 来定义一个类别,包含了所有特征

object是关键词,是“东西”的意思

其中feather和reprodction属于类的属性(attribute)

方法(method)指的是“行为属性”

self是内部引用对象,self必须为第一个参数

4.13对象

class bird(object):

    def chirp(self,sound):

    def set_color(self,color):

    self.color=color

class定义的是共同的类属性,需要描述个体的差异。需要用到self

self必须在方法内部操作属性,不可以在类下方直接赋值.除了操作对象属性,还可以在一个方法内部调用同一类的其他方法。

初始化对象属性:_init_()

    每当对象建立时,_init_()会被自动调用。

4.2

4.21子类

子类继承父类的基本属性,并且可以增加父类不存在的属性,从而增加子类的功能。

4.22属性覆盖

1、  可继承,也可替换

2、通过super调用父类中被覆盖的属性。既有父类又有子类。

4.3

4.31列表对象

type():返回参数的数据类型。

help():查询函数的说明文档。

dir():来查询一个类或者对象的所有属性。

pass:是Python的一个特殊关键字,用于说明上面描述“什么都不做”,

list“隐藏功能”:

1、追加 (append)

>>> names = ['a','b','c','d']

>>> names.append('e')

>>> names

['a', 'b', 'c', 'd', 'e']

2、统计(count)

>>> names = ['a','b','c','d','a']

>>> names.count('a') #统计'a'元素的个数

[2]

3、获取下标值 (index)

>>> names = ['a','b','c','d']

>>> names.index('a')

【0】

4、排序(sort)

>>> names = [4,2,3,1]

>>> names.sort()

>>> names

[1, 2, 3, 4]

5、翻转(reverse)

>>> names = ['a','b','c','d']

>>> names.reverse()

>>> names

['d', 'c', 'b', 'a'] #将整个列表翻转过来

ps:想要查看列表中用到的方法,可以用dir()进行查看

>>> names = [ ]

>>>dir(names)

4.32元组与字符串对象

元组 Tuple

T.index('c') #返回索引 

T.count('b') #返回出现次数

字符串 str

1、字符串的测试与查找

str. startswith (prefix[, start[, end]])

str. endswith(suffix[, start[, end]])

endswith()检查字符串str是否以suffix结尾,返回布尔值的True和False。suffix可 以是一一个元组(tuple)。可以指定起始start和结尾end的搜索边界。

同理 startswith()用来判断字符串str是否是以prefix开头。

str. count (sub[, start[, end]])

返回字符串str中子串sub出现的次数,可以指定从哪里开始计算(start)以及计算到哪里结束(end), 索引从0开始计算,不包括end边界。

str. find(sub[, start[, end]])

str. rfind(sub[, start[, end]])

str. index(sub[, start[, end]])

str. rindex (sub[, start[, end]])

find()搜索 字符串S中是否包含子串sub,如果包含,则返回sub的索引位置,否则返回"-1"。可以指定起始start和结束end的搜索位置。

index()和find()一样,唯一不同点在于当找不到子串时,抛出ValueError错误。

rfind()则是返回搜索到的最右边子串的位置,如果只搜索到一个或没有搜索到子串,则和find()是等价的。同理rindex()。

字符串的替换

str. replace(old, new[, count])

将字符串中的子串old替换为new字符串,如果给定count, 则表示只替换前count个old子串。 如果S中搜索不到子串old,则无法替换,直接返回字符串S(不创建新字符串对象)。

str. expandtabs (N)

将字符串S中的\t替换为一定数量的空格。默认N=8。注意,expandtabs(8)不是将\t直接替换为8个空格。例如’xyz\tab’ expandtabs()会将\t替换为5个空格,因为"xyz" 占用了3个字符位。所以,在替换"\t"为空格时,会减掉"\t"前面的字符数量。如果"'t"的前面正好没有字符, 则直接将"\t"替换为N个空格。另外,它不会替换换行符(\n或\r)。

str. translate (table)

static str. maketrans(x[, y[, z]])

str.maketrans()生成一一个字符一一 映射的table,然后使用translate(table)对字符串S中的每个字符进行映射。

translate()实现的功能和Linux中的tr命令是类似的。

注意,maketrans(x[, y[, z1])中的x和y都是字符串,且长度必须相等。

如果maketrans(x[, y[, z])给定了第三个参数z,则这个参数字符串中的每个字符都会被映射为None。

详细字符串对象了解可以参考网站:

https://blog.csdn.net/syd_de_blog/article/details/88775245

4.33词典对象

keys(): 循环遍历每个元素的键

values():遍历每个元素

clear():清空词典

4.4

4.41循环对象

内置函数iter():把一个列表转变循坏对象,循坏时调用_next_()方法。直到stopiteration出现。

生成器:自定义循环对象。生成器的编写方法和函数定义类似,只是在return的地方改为yield。

生成器中可以有多个yield。当生成器遇到一个yield时,会暂停运行生成器,返回yield后面的值。当再次调用生成器的时候,会从刚才暂停的地方继续运行,直到下一个yield。生成器自身又构成一个循环对象,每次循环使用一个yield返回的值。

4.42函数对象

_call_():任何一个有_call_()特殊方法的对象都被当做函数

4.43模块对象

模块也是对象,引入模块time

import time

from time import sleep

sleep(10)

print(“wake up”)

time中的sleep()中参数说明了中止时间

import time

from time import sleep   这两部分可以直接合并为form time import*

对象属性方法调用:

import time

time.sleep(10)

模块换名字:

import time as t

t.sleep(10)

将功能相似的模块放在同一个文件夹中,构成一个模块包。

该文件夹中必须包含一个__init__.py的文件,提醒Python,该文件夹为一个模块包。

__init__.py可以是一个空文件。

每个模块对象都有一个__name__属性,用来记录模块的名字。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容