python学习07列表

1.列表的定义与表示

    是可变的序列,也是一种可以存储各种数据类型的集合
    用[]中括号表示列表的开始和结束;元素之间用,逗号隔开

2.列表的基本操作

(1)列表中的元素
l1=[] #空列表
print(len(l1))  #0
l2=[""] #列表中只有一个元素,即空字符串
print(len(l2)) #1
l3=['abc','bcd','def']
print(len(l3)) #3
l4=['Tom',22,'Aim',30] #同一个列表可以包含不同的数据类型的元素
print(len(l4)) #4
(2)列表的下标
print(l3[0])  #abc
(3)列表的遍历
for ele in l4:
  print(ele)

...............................................

输出:

Tom
22
Aim
30

....................................................

(4)列表的基本操作:(使用列表的方法,只需要在列表名和方法之间加个点(.))
  1.增加元素的操作
    append:在列表尾部增加元素,没有返回值
    insert(下标,元素):在相应下标的位置插入新的元素
...........................................................................................

lst=[11,11,22,33,44,55,66]
lst.append(77)
print(lst)
lst.insert(1,'new')
print(lst)

输出:

[11, 11, 22, 33, 44, 55, 66, 77]
[11, 'new', 11, 22, 33, 44, 55, 66, 77]

...........................................................................................
  2.查找元素的操作
    index:返回指定元素的下标  L.index(value,[start[,stop]])
    此外,还有切片读取,下标读取,in成员运算符判断(如上述的列表的遍历)

............................................................................................

lst=[11,11,22,33,44,55,66]
print(lst.index(22))
#输出:2
lst=[11,11,44,22,33,44,55,66]
print(lst.index(44,2)) #从下标2开始查找元素44(包括下标2)
#输出:2
print(lst.index(44,3))
#输出:5

..............................................................................................

  3.修改元素的操作
    与字符串不同,列表可以通过指定下标来修改对应的元素

  4.删除元素的方法
    pop(下标):删除指定下标对应的元素并返回这个元素的值
    remove(值):删除指定元素值的元素
    clear:清空列表所有元素
    此外,还有del函数,详见下例

.......................................................................................................

lst=[11,11,44,22,33,44,55,66]
ne=lst.pop(1)
print(ne)
print(lst)
lst.remove(11)
print(lst)
lst.clear()
print(lst)
lst1=[11,11,22,33,44,55,66,88]
del(lst1[1])
print(lst1)
del(lst1)
print(lst1)
'''
输出:
11
[11, 44, 22, 33, 44, 55, 66]
[44, 22, 33, 44, 55, 66]
[]
[11, 22, 33, 44, 55, 66, 88]

del 删除了整个列表lst1之后,再次调用则会报错:NameError: name 'lst1' is not defined
'''

.......................................................................................................

  5.合并列表元素的方法
    extend:合并两个列表成一个列表(值全部传给前面的列表)
............................................................................................................

lst=[11,11,44,22,33,44,55,66]
lst1=lst.copy()
print(lst1)
lst.extend(lst1)
print(lst)
#输出:

[11, 11, 44, 22, 33, 44, 55, 66]
[11, 11, 44, 22, 33, 44, 55, 66, 11, 11, 44, 22, 33, 44, 55, 66]

............................................................................................................
  6.列表元素排序
    sort:对列表元素进行排序
      分为升序和降序,使用格式为
      LIST.sort(key=None,reverse=False):
      key为调用某种函数,然后再对列表进行排序处理;

      例如key=str.lower:先将所有字母大写转换成小写;

        key=str.upper:将所有字母小写转为大写

        reverse=True时,为降序,=False时,为升序。默认做升序处理
....................................................................................................................................

lst=[11,11,44,22,33,44,55,66]
lst.sort(reverse=True)
print(lst)
#输出:
[66, 55, 44, 44, 33, 22, 11, 11]

.....................................................................................................................................
  7.其他操作
    copy:复制生成新的同样的列表,返回一个新的相同的列表
    count:统计指定元素的个数
    reverse:反转列表元素
.....................................................................................................................................

lst=[11,11,44,22,33,44,55,66]
print(lst.count(11)) #2
lst.reverse()
print(lst) #[66, 55, 44, 33, 22, 44, 11, 11]

.....................................................................................................................................

3.列表解析 [表达式 for 变量 in 列表 if 条件]
例题:对于集合0到10中,除了0以外,其他元素做平方运算

num=[i**2 for i in range(11) if i>0]
print(num)
输出
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

 

posted @ 2020-01-16 20:49  程序员王不错  阅读(138)  评论(0)    收藏  举报