列表

1:用途:存放多个值

定义方式: []内以逗号分隔多个元素,列表内元素五类型限制

x=['a','b','c']            # type (x)  ==>>     ‘  <class 'list'>’

 2:常用操作+内置的方法

2.1:按索引存取值(正向存取+反向存取):即可改也可以取        语法:x[索引元素的位置]    x表示列表

x=['a','b','c']
print(id(x))            #打印结果 2169438807112
print(x[-1]) #打印结果 c
x[0]='A'
print(id(x)) #打印结果 2169438807112
print(x) #打印结果 ['A', 'b', 'c']

可以取值 . 值变,id不变, 所以是可以更改的。

 

2.2  切片(顾头不顾尾,步长)    同字符串差不多        语法:  x[ 起始位置 :  末尾位置的后一位: 步长]    x 表示列表

stus=['alex','egon','wxx','yxx','lxx']
print(stus[1:3])           #打印结果   ['egon', 'wxx']  从左向右数
print(stus[-1:-4:-2])     #打印结果  ['lxx', 'wxx']     从右向左数, 隔一个取一个

 

2.3  长度 len   语法:  len(x)    X表示列表

stus=['alex','egon','wxx','yxx','lxx']
print(len(stus))   #打印结果  5  表示有5个元素在里面

 

2.4 成员运算  in(在里面的意思 )和 not in(不在里面的意思)

stus=['alex','egon','wxx','yxx','lxx']
print('alex' in stus)     #打印结果为True    说明alex 在列表里面

 

2.5 追加  append          语法:x.append('')    X是指列表,   ()里是指要追加的元素   ,最后追加的内容只能放在列表中的位置的最后

stus=['alex','egon','wxx','yxx','lxx']
stus.append('wupei')
stus.append('peiqi')
print(stus)                   #  打印结果['alex', 'egon', 'wxx', 'yxx', 'lxx', 'wupei', 'peiqi']

 

2.6 插入    insert        语法:x.append( 插在其前面的那个元素的位置,'   插入的元素')   其中  X是指列表,()里是指要追加的元素   ,最后追加的内容只能放在列表中的位置的最后

stus=['alex','egon','wxx','yxx','lxx']
stus.insert(1,'艾利克斯')      #要插在'egon'的前面,‘egon’在列表stus中为第1位 
print(stus)                   #打印结果  ['alex', '艾利克斯', 'egon', 'wxx', 'yxx', 'lxx']

2.7    删除  remove   与  pop  

 remove :单纯的删除 删除的那个值没有了取不到         语法: x.remove('alex')      x 表示列表,()里表示要删除的那个元素

pop: 取走一个值,  取走的这个值可以重新赋予变量名使用。  语法:x.pop()    x 表示列表,()里表示要取走的那个元素,  ()里不写的话 ,默认删除末尾)  

stus=['alex','egon','wxx','yxx','lxx']
stus.remove('alex')
print(stus)                # 打印结果  ['egon', 'wxx', 'yxx', 'lxx']


stus=['alex','egon','wxx','yxx','lxx']
b=stus.pop(1)
print(b)    #打印结果  egon
print(stus) #打印结果  ['alex', 'wxx', 'yxx', 'lxx']
stus=['alex','egon','wxx','yxx','lxx']
stus.pop() # ()里不写元素的话,默认删除末尾
print(stus) #打印结果['alex', 'egon', 'wxx', 'yxx']

2.8 循环  依赖索引型  (while)  与不依赖索引型  ( for)

while:
stus=['alex','egon','wxx','yxx','lxx']
i=0
while i< len(stus):
    print(stus[i] ,end=" ")    #end=""表示不换行
    i+=1                  #打印结果  alex egon wxx yxx lxx


stus=['alex','egon','wxx','yxx','lxx']
for item  in stus:
    print(item,end=' ')    #打印结果   alex egon wxx yxx lxx

 

for循环的补充内容:range  . range只相当于一个参数 , 来表达一定的范围。

for i in range(0,5,2): 
     print(i)                      #打印结果:#0  2  4     
for i in range(10):           #默认从零起始
    print(i)                    #打印结果0 1 2 3 4 5 6 7 8 9     

for i in range(10,-2,-1):
    print(i,end=" ")             #打印结果 10 9 8 7 6 5 4 3 2 1 0 -1

 

2.9 需要掌握的  

(1)count(统计某个元素的个数),    x.count(' ')    X代表列表,()里面代表统计的某个元素

stus=['alex','egon','alex','wxx','yxx','lxx']
print(stus.count('alex'))   #打印结果  2  表示列表里有2个alex

  

(2)extend 可以扩展多个元素       语法:x.extend()     x 代表列表  ,()里面代表要扩展进去的列表

stus=['alex','egon','alex','wxx','yxx','lxx']
stus.extend(['a','b','c'])
print(stus)     #打印结果  ['alex', 'egon', 'alex', 'wxx', 'yxx', 'lxx', 'a', 'b', 'c']

 

(3)index:  索引列表中某个元素在列表中的位置,默认从左到右第1个起算  语法 :x.index('', 起始位置,结束位) x 代表列表

stus=['alex','egon','alex','alex','wxx','yxx','lxx']
print(stus.index('alex',1,5))   # 打印结果是2
# 1,5   代表起始位置,  与结束位置(不包括这一位)。从第2个元素开始算起,到第6个元素(不包括第6个元素)中alex在整个元素中的位置为第2位

 

(4)reverse:反转 反过来    。语法: x.reverse()   x表示列表

stus=['alex','egon','alex','alex','wxx','yxx','lxx']
stus.reverse()
print(stus)  #打印结果 ['lxx', 'yxx', 'wxx', 'alex', 'alex', 'egon', 'alex']

(5) sort 排序。大前提:只能同类型直接比较大小,对于有索引值直接的比较是按照位置一一对应进行比较的。其中所有的大写字母 都小于 所有的小写字母。(字母同类型的话越往后越大, 其中小写字母 z 最大,   a>Z)

X=[1,10,3,12]
X.sort
print(X)  #打印结果[1, 10, 3, 12]



X=[1,10,3,12]
X.sort(reverse=True)  #reverse  反转的意思
print(X)   # 打印结果  [12, 10, 3, 1]
 

 

posted @ 2018-03-20 19:16  C3的脚印  阅读(174)  评论(0编辑  收藏  举报