python基础-序列类型的各自方法

1、系统方法,辅助方法:

#列表
li = ['a','b','c','e','d']
#help  帮助文档查询,相关方法详细介绍 ,相当于说明书
>>> help(li.append)  #
#系统方法中:参数带中括号[] ,[index]  表示参数可写可不写

#dir  查询系统类的属性和方法
>>> dir(li)   

#Alt+P返回上一次写代码

2、列表(List)系统方法

# L.append(obj) 在列表末尾添加新的对象。
>>> li=["a","b"]
>>> li.append("c")
['a', 'b', 'c']
# L.clear() 清空整个列表。
>>> li=["a","b"]
>>> li.clear()
[]

# L.copy() 复制列表,生成一个新的对象
>>> li=["a","b"]
>>> li1=li.copy()
>>> print(li1)
['a', 'b']
>>> id(li)
18402480
>>> id(li1)
64858392

# L.count(obj) 统计某个元素在列表中出现的次数。
>>> li=["a","b","c","d","a"]
>>> li.count("a")
2

# L.extend(obj) 用obj扩展原来的列表。 
dir(li)方法中有 '__iter__',方法是可以迭代
 >>> li=["a","b","c"]
>>> li.extend("defg")  #追加的方式
['a', 'b', 'c', 'd', 'e', 'f', 'g']

# L.index(obj) 从列表中找某个值第一个匹配项的索引位置。
>>> li=["a","b","c"]
>>> li.index("a")
0

# L.insert(index,obj) 插入元素,可以指定位置。
>>> li=[1,2,3]
>>> li.insert(1,4)
[1, 4, 2, 3]

# L.pop(index) 出栈,可以指定位置。index默认是L[-1]
>>> help(li.pop)
L.pop([index])    #系统方法中:[index]  表示参数可写可不写
li.pop()  #默认弹出最后一个元素  [ ],可写,可不写
>>> li=[1,2,3]
>>> li.pop()
[1, 2]
li.pop(0) #也可以指定
>>> li=[1,2,3]
>>> li.pop(0)  #第一个元素
[2, 3]

# L.remove(obj) 移除指定元素从左边开始的第一个。
>>> li=[1,2,3]
>>> li.remove(1)
[2, 3]

L.reverse() 反向列表中元素。
>>> li=["a","b","d","c"]
>>> li.reverse()
['c', 'd', 'b', 'a']

L.sort() 对原列表进行排序。列表中的元素要类型相同 
(key=None, reverse=False)  #key是按指定方法排序,reverse:True数据反转
li=["abc","adsfsdf","a","acdfsf","b"]
>>> li.sort()  #默认是ASCII码排序
>>> li.sort(key=len) #key按值得长度排序

# 内置函数:
sorted() 和 reversed()
>>> sorted(li,reverse=True)
reversed()
# 函数是返回序列seq的反向访问的迭代子
>>> li=[1,2,3,4,5]
>>> li1=reversed(li)
<list_reverseiterator object at 0x03DA78B0>
>>> for i in  li1:
    print  (i)
#打印的value值
5
4
3
2
1

3、元祖 不可变

li=('a','b','c','d')
li1 =1,2
count(obj)统计某个元素在元组中出现的次数
>>> li.count('a')  #计数

index(obj)从列表中找某个值第一个匹配项的索引位置
#没有找到,会报错

>>>li.index('d')  #默认从整个元祖里面,搜索
>>>li.index('d',1,4)  #也可已指定范围,[1,4],左闭右开

注意:声明只有一个元素的元组时要加逗号
特点:不可变

4、字符串

s = 'Hello World'
#  统计str方法数
li = dir(s)
li.index('capitalize')
l2= li[33:]
len(l2)

字符串常用的系统方法

>>> s="Hello World"
s.count(x):返回字符串x在s中出现的次数,带可选参数
>>> s.count("H")
1
s.endswith(x):如果字符串s以x结尾,返回True
>>> s.endswith("D")
False

s.startswith(x):如果字符串s以x开头,返回True
>>> s.startswith("H")
True

s.find(x) :返回字符串中出现x的最左端字符的索引值,如果不在则返回-1
>>> s.find("l") #不会报错
2

s.index(x):返回字符串中出现x的最左端的索引值,如果不在则抛出valueError异常
>>> s.index("l") #不会报错
2

s.isalpha ()  :测试是否全是字母,都是字母则返回 True,否则返回 False.
>>> s.isalpha()  #s里面有空格
False

s.isdigit () :测试是否全是数字,都是数字则返回 True 否则返回 False.
>>> s="1234456"
>>> s.isdigit()
True

s.islower () :测试是否全是小写
>>> s="helloworld"
>>> s.islower()
True

s.isupper () :测试是否全是大写
>>> s.isupper()
False

s.lower () :将字符串转为小写
>>> s.lower()
'helloworld'

s.upper () :将字符串转为大写 
>>> s.upper()
'HELLOWORLD'

s.replace (x,y) :子串替换,在字符串s中出现字符串x的任意位置都用y进行替换
>>> s="Hello World"
>>> s.replace("l","")
'Heo Word'

s.split():返回一系列用空格分割的字符串列表
>>> s="acbd efg"
>>> s.split() 
['acbd', 'efg']
s.split(a,b):a,b为可选参数,a是将要分割的字符串,b是说明最多要分割几个
>>> s="abbbabbbabbbabbb"  
>>> s.split("a",2)  #默认是-1
['', 'bbb', 'bbbabbbabbb']