【第十天】Python的对象

作者: 人生苦短_我用Python | 来源:发表于2018-03-22 13:35 被阅读11次

    4.3对象

    1.列表对象

    下面一些list方法,可以返回列表信息:

    a = [1,2,3,5,9.0,'good',-1,True,False,'Bye']
    
    >>>a.count(5)         #计数,看总共有多少个元素5     
    >>>a.index(3)         #查询元素3第一次出现时的下标
    

    对列表进行修改操作的方法:

    >>>a.append(6)        #在列表的最后增添一个新元素6
    >>>a.sort()           #排序
    >>>a.reverse()        #颠倒次序
    >>>a.pop()            #去除最后一个元素,并将该元素返回
    >>>a.remove(2)        #去除第一次出现的元素2
    >>>a.insert(0,9)      #在下标为0的位置插入9
    >>>a.clear()          #清空列表
    

    通过对方法的调用,列表的功能大为增强

    2.元组和字符串对象

    元组与列表一样,都是序列,但元组不能变更内容
    因此,元组只能进行查询操作,不能进行修改操作:

    a = (1,3,5)
    
    >>>a.count(5)         #计数,看总共有多少个元素5     
    >>>a.index(3)         #查询元素3第一次出现时的下标
    

    字符串是特殊的元组,因此可以执行元组的方法:

    a = 'abc'
    a.index('c')
    

    尽管字符串是元组的一种,但字符串(string)有一些方法能改变字符串
    这似乎违背了元组的不可变性,其实,这些方法并不是修改字符串对象
    而是删除原有字符串,再建立一个新的字符串,所以并没有违背元组的不可变性

    下面总结了字符串对象的方法,str为一个字符串,sub为str的一个子字符串
    s为一个序列,它的元素都是字符串,width为一个整数
    用于说明新生成字符串的宽度,这些方法经常用于字符串的处理

    str = 'Hello World!'
    sub = 'World'
    
    >>>str.count(sub)               #返回:sub在str中出现的次数
    
    >>>str.find(sub)                #返回:从左开始,查找sub在str中第一次出现的位置
                                    #如果str中不包含sub,返回-1
    
    >>>str.index(sub)               #返回:从左开始,查找sub在str中第一次出现的位置
                                    #如果str中不包含sub,举出错误
    
    >>>str.rfind(sub)               #返回:从右开始,查找sub在str中第一次出现的位置
                                    #如果str中不包含sub,返回-1
    
    >>>str.rindex(sub)              #返回:从右开始,查找sub在str中第一次出现的位置
                                    #如果str中不包含sub,举出错误
    
    >>>str.isalnum()                #返回:True,如果所有的字符都是字母或数字
    
    >>>str.isalpha()                #返回:True,如果所有的字符都是字母
    
    >>>str.isdigit()                #返回:True,如果所有的字符都是数字
    
    >>>str.istitle()                #返回:True,如果所有的词的首字母都是大写
    
    >>>str.isspace()                #返回:True,如果所有的字符都是空格
    
    >>>str.islower()                #返回:True,如果所有的字符都是小写字母
    
    >>>str.isupper()                #返回:True,如果所有的字符都是大写字母
    
    >>>str.split([sep,[max]])       #返回:从左开始,以空格为分隔符(separator)
                                    #将str分割为多个子字符串,总共分割max次
                                    #将所得的字符串放在一个表中返回,可以以
                                    #str.resplit(',')的方式使用其他分隔符
                                    
    >>>str.rsplit([sep,[max]])      #返回:从右开始,以空格为分隔符(separator)
                                    #将str分割为多个子字符串,总共分割max次
                                    #将所得的字符串放在一个表中返回,可以以
                                    #str.resplit(',')的方式使用其他分隔符
    
    >>>str.join(s)                  #返回:将s中的元素,以str为分隔符
                                    #合并成一个字符串
    
    >>>str.strip([sub])             #返回:去掉字符串开头和结尾的空格
                                    #也可以提供参数sub,去掉位于字符串开头和结尾的sub
    
    >>>str.replace(sub,new_sub)     #返回:用一个新的字符串new_sub替换str中的sub
    
    >>>str.capitalize()             #返回:将str第一个字母大写
    
    >>>str.lower()                  #返回:将str全部字母改为小写
    
    >>>str.upper()                  #返回:将str全部字母改为小写
    
    >>>str.swapcase()               #返回:将str大写字母改为小写,小写字母改为大写
    
    >>>str.title()                  #返回:将str的每个词(以空格分隔)的首字母大写
    
    >>>str.center(width)            #返回:长度为width的字符串,将原字符串放入
                                    #该字符串中心,其他空余位置为空格
                                    
    >>>str.ljust(width)             #返回:长度为width的字符串,将原字符串左对齐放入
                                    #该字符串,其他空余位置为空格
    
    >>>str.rjust(width)             #返回:长度为width的字符串,将原字符串右对齐放入
                                    #该字符串,其他空余位置为空格
    

    3.词典对象

    词典同样是一个类:

    example_dict = {'a':1,'b':2}
    type(example_dict)
    

    我们可以通过词典的keys()方法,来循环遍历每个元素的键:

    for k in example_dict.keys():
        print(example_dict[k])
    

    通过values()方法,可以遍历每个元素的值,或者用items方法
    直接遍历每个元素:

    for v in example_dict.values():
        print(v)
        
    for k,v in example_dict.items():
        print(k,v)
    
    1
    2
    a 1
    b 2
    

    我们也可以用clear方法,清空整个词典:

    example_dict.clear()   #清空example_dict,变为{}
    

    相关文章

      网友评论

        本文标题:【第十天】Python的对象

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