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

你可能感兴趣的:(5-Python序列类型的方法)