5-Python序列类型的方法

列表的方法

1. 查看列表的方法

>>> li = [1, 2.3, True, (1+2j)]

>>> dir(li)

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

2. 查看python所有内置的方法

>>> dir(__builtins__)

['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError', '_', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']

3. 查看有哪些关键字

>>> import keyword

>>> keyword.kwlist

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

4. 查看方法具体如何使用

最后按q键退出文档查看

>>> help(li.append) 

Help on built-in function append: 

append(...) method of builtins.list instance 

        L.append(object) -> None -- append object to end   

(END)

5. 列表的增删改查,及其他方法

append(object)                       末尾添加元素

insert(index, object)                根据某个索引位置插入元素

extend(iterable)                      添加一个可迭代的对象例如:list,tuple,str

pop([index])                            默认删除list的最后一个元素,如果传入index,将会删除索引位置的元素

remove(value)                        删除指定value的元素

clear()                                     删除list中的所有元素

index(value, [start, [stop]])      查找某个value的索引位置

count(value)                            查找某个value在list中的个数

copy()                                      复制list

reverse()                                 反转list

sort()                                       list排序,注意list中的元素必须是统一类型,否则无法排序

#    增

>>> li = [1, 2.3, True, (1+2j)] 

>>> li.append('wang') 

>>> li 

[1, 2.3, True, (1+2j), 'wang'] 

>>> li.insert(0, 'first') 

>>> li 

['first', 1, 2.3, True, (1+2j), 'wang'] 

>>> li.extend('wang') 

>>> li 

['first', 1, 2.3, True, (1+2j), 'wang', 'w', 'a', 'n', 'g'] 

#    删

>>> li 

['first', 1, 2.3, True, (1+2j), 'wang', 'w', 'a', 'n', 'g'] 

>>> li.pop() 

'g'

 >>> li 

['first', 1, 2.3, True, (1+2j), 'wang', 'w', 'a', 'n'] 

>>> li.pop(8) 

'n' 

>>> li.remove('a') 

>>> li 

['first', 1, 2.3, True, (1+2j), 'wang', 'w'] 

>>> li.clear() 

>>> li             

[] 

#    改

>>> li = [1, 2.3, True, (1+2j)] 

>>> li[0] = 'first' 

>>> li 

['first', 2.3, True, (1+2j)]   

#    查

>>> li = [0, 1, 2, 3, 'w', 'a', 'n', 'g', 'w', 'e', 'i', 3, 2, 1, 0] 

>>> li.index('w') 

4

>>> li.index('w', 5) 

>>> li.count('w') 

>>> li.count('a')          

1

#    其他方法(复制,列表反转,排序)

>>> li = ['a', 'c', 'b', 'f', 'd'] 

>>> li.copy() 

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

>>> li.reverse() 

>>> li 

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

>>> li.sort() 

>>> li 

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

元组的方法

元组可用的方法只有查询功能

index(value, [start, [stop]])      查找某个value的索引位置

count(value)                            查找某个value在tuple中的个数

注意:元组是不可变的

字符串的方法

字符串常见的增删改查

count(value)                            查找某个value在字符串中的个数

find(sub,[start, [stop]])             查找某个元素的索引位置,查找不存在的结果时返回 -1

index(sub,[start, [stop]])           和find功能类似,不一样的地方是查找到不存在的结果时会报错                               

isdigit()                                     判断字符串内是否只有数字,是返回True,反之Flase

isalpha()                                   判断字符串内是否只有字母,是返回True,反之Flase                 

endswith(suffix[, start[, end]])    判断字符串内是否以suffix结尾,是返回True,反之Flase    

startswith(prefix[, start[, end]])    判断字符串内是否以prefix开头,是返回True,反之Flase

islower()                                      判断字符串内是否都为小写,是返回True,反之Flase

isupper()                                      判断字符串内是否都为大写,是返回True,反之Flase

upper()                                         将字符串内所有的英文字母改成大写

lower()                                          将字符串内所有的英文字母改成小写

strip()                                            将字符串内左右边的空格都去掉

lstrip()                                           将字符串内左边的空格去掉

rstrip()                                           将字符串内右边的空格去掉

capitalize()                                    将字符串内第一个元素变成大写

title()                                              将字符串内每个空格后的字母变成大写

split(sep=None, maxsplit=-1)         将字符串通过sep切割成list,maxsplit为最大切割数,返回一个列表                             

replace(old, new[, count])                将字符串的old替换成new,count为替换的次数                        

#    查

>>> 'hello'.count('l') 

2

>>> 'hello'.find('o') 

>>> 'hello'.find('100') 

-1 

>>> 'hello'.index('e') 

1

>>> 'hello'.isdigit() 

False 

>>> '123'.isdigit() 

True 

>>> 'abc'.isalpha() 

True 

>>> ' 123'.isalpha() 

False 

>>> 'hello'.endswith('o') 

True 

>>> 'hello'.startswith('h') 

True 

>>> 'hello'.isupper()       

False 

>>> 'Hello'.islower() 

False 

#    改(并不是改初始的字符串)

>>> 'Hello'.upper()  

'HELLO'    

>>> 'Hello'.lower()       

'hello' 

>>> ' hello '.strip() 

'hello' 

>>> ' hello '.lstrip() 

'hello '

>>> ' hello '.rstrip()

' hello' 

>>> 'hello'.capitalize() 

'Hello' 

>>> 'hello word today'.title() 

'Hello Word Today' 

>>> 'hello word today'.split(' ', 2) 

['hello', 'word', 'today'] 

# 删(并不是改初始的字符串)

>>> 'hello word today'.replace('o', ' ', 2) 

'hell w rd today'       

字符串的增主要是靠字符串的拼接来实现的

字符串的转义

字符串前面加上\,字符就不再表示字符本身的意思,表示ASCII码中不能显示的字符.常见如下:

\n        换行

\t        水平制表符

\b        退格

\r        回车,当前位置移到本行开头

\\        代表反斜杠 \

\'        代表一个单引号,同样“等符号也可以这么输出

\0        代表一个空字符,若是字符串中只有字母则代表空字符,若是\0夹在数字开头或数字中间,则会去掉\0后的所有数字

\a        系统提示音

在python中如果要去掉字符串的转义,只需要在字符串前面加上r

r'abc\tabc'

>>> print('\n123')

123

>>> print('\t123')

        123

>>> print('\b123')

23

>>> print('abc\b123')

ab123

>>> print('abc\r123')

123

>>> print('abcd\r123')

123d

>>> print('abcd\\123')

abcd\123

>>> print('abcd\'\"0123') 

abcd'"0123 

>>> print('abc12\034abc') 

abc12abc 

>>> print('abc\a123') 

abc123 

>>> print(r'abc12\034abc') 

abc12\034abc 

字符串的编码

encode()默认utf-8编码方式

decode()解码,使用什么方式编码就用什么方式解码

>>> '你好'.encode(encoding='UTF-8')

b'\xe4\xbd\xa0\xe5\xa5\xbd'

>>> '你好'.encode(encoding='GBK')

b'\xc4\xe3\xba\xc3'

>>> '你好'.encode()

b'\xe4\xbd\xa0\xe5\xa5\xbd'

>>> a 

b'\xe4\xbd\xa0\xe5\xa5\xbd' 

>>> b 

b'\xc4\xe3\xba\xc3' 

>>> c 

b'\xe4\xbd\xa0\xe5\xa5\xbd' 

>>> a.decode(encoding='utf-8') 

'你好' 

>>> b.decode(encoding='gbk') 

'你好' 

>>> c.decode()

'你好'           

英文汇总

dir

builtins

keyword

append               

insert               

extend                

iterable                     

pop                     

remove                                      

clear                           

count                 

copy 

reverse                        

sort       

find            

isdigit    

isalpha                                               

endswith    

suffix    

startswith    

prefix    

islower                               

isupper                                     

upper                                        

lower                                                 

strip                                        

lstrip                                      

rstrip                                      

capitalize                                         

title                                                          

split                             

replace            

encode

decode

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

推荐阅读更多精彩内容