列表的基础认识

一 列表

1.

介绍:列表是python 中的基础数据类型之一,其他的编程语言也有类似的数据类型.

        它是以  [ ]  括起来的,每个元素用 " ," 隔开,并且可以存放  各种   数据类型

         列表相比于字符串,不仅可以存放不同的数据类型,而且可以存放大量的数据,列表是有序的(按照你

          保存的顺序) , 有 索引,可以切片,方便取值

2.

 列表的切片和索引

列表和字符串一样 也 拥有索引:

## 列表切片是 左开右闭的 区间  
# [start:end:step]  start:起始位置 end : 结束位置 step :步长,可以改变方向
lst = [1,2,3,4,5,6,7,8,9,10]
print(lst[1])  # 2
print(lst[:])   ## [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(lst[::2])   ##  [1, 3, 5, 7, 9]
print(lst[-1:-8:-2])   ##  [10, 8, 6, 4]

二 .列表的增删改查

1.增 : 注意 list 和 str  是不一样的,lst可以改变,所以直接在 原来的对象上进行操作

lst = ["嘻嘻姐","呵呵妹","傻了吗"]
lst.append("哈哈哥")
print(lst)  ## ['嘻嘻姐', '呵呵妹', '傻了吗', '哈哈哥']

lst = []
while 1:
    content = input("输入你的内容,输入Q退出:")
    if content.upper() == "Q":
        break
    lst.append(content)
print(lst)

lst = ["关之琳","李若彤","王菲"]
lst.insert(1,"刘德华")   
print(lst)   ##  ['关之琳', '刘德华', '李若彤', '王菲']

## insert() 在指定的位置加入元素,原来的元素向后移一位

lst = ["杨过","小龙女","阿紫","乔峰"]
li = ["哈哈哥","嘻嘻姐"]
lst.extend(li)
print(lst)  ###  ['杨过', '小龙女', '阿紫', '乔峰', '哈哈哥', '嘻嘻姐']

###  extend()  是迭代添
 
 
 

增加  append() 默认在最后面 追加

   insert()   指定位置添加

   extend() 迭代着添加

2.删  pop remove clear del 

lst = ["乌鲁木齐","克拉玛依","郑州","西安"]
ret = lst.pop(2)  ## 不写数字的是默认删除最后一项,写了数字按照索引删除
print(ret)   ## "郑州"
print(lst)   ##  ['乌鲁木齐', '克拉玛依', '西安']

#### 注意 ,pop() 是有返回值的,ret = lst.pop()  返回值就是被删除的元素



lst = ["乌鲁木齐","克拉玛依","郑州","西安"]
lst.remove("克拉玛依")
print(lst)   ###  ['乌鲁木齐', '郑州', '西安']

### remove() 删除指定的元素 , 删除不存在会报错


lst = ["乌鲁木齐","克拉玛依","郑州","西安"]
lst.clear()
print(lst)  ## []

##  clear() 是全部清除,一个不留



lst = ["乌鲁木齐","克拉玛依","郑州","西安","太原","北京"]
del lst[0:3:2]
print(lst)     ## ['克拉玛依', '西安', '太原', '北京']

### del  切片删除  可以有步长,每2 个删除 1个

3.改   利用索引切片修改

lst = ["大盘鸡","手抓饭","牛肉面","烤包子","烤全羊","熏马肉"]
lst[2] = "大乌苏"
print(lst)     ##  ['大盘鸡', '手抓饭', '大乌苏', '烤包子', '烤全羊', '熏马肉']


lst = ["大盘鸡","手抓饭","牛肉面","烤包子","烤全羊","熏马肉"]
lst[1:4:2] = ["大乌苏","红乌苏"]
print(lst)

###  结果是  ['大盘鸡', '大乌苏', '牛肉面', '红乌苏', '烤全羊', '熏马肉']

## 注意: 利用步长的时候,取了几个值,对应的改的元素的个数 一定要和 前面的 一致

lst = ["大盘鸡","手抓饭","牛肉面","烤包子","烤全羊","熏马肉"]
lst[1:4] = ["哈哈哥最喜欢新疆的馕坑肉"]
print(lst)

###  结果是  ['大盘鸡', '哈哈哥最喜欢新疆的馕坑肉', '烤全羊', '熏马肉']


############ 注意  #########

lst = ["大盘鸡","手抓饭","牛肉面","烤包子","烤全羊","熏马肉"]
lst[1:4] = "馕坑肉"
print(lst)

###  结果是  ['大盘鸡', '馕', '坑', '肉', '烤全羊', '熏马肉']

##  如果不加[] 就变成 迭代添加进去了

4. 查   利用for循环 进行查找 

for el in lst:
    print(el)

5. 其他操作

lst = ["星星","月亮","太阳","月亮","星星","太阳"]
num = lst.count("星星")
print(num)  ### 2   查询 元素 出现的 次数

lst = [4,6,7,9,8,11,22,13,15]
lst.sort()
print(lst)   ### [4, 6, 7, 8, 9, 11, 13, 15, 22] 默认升序

lst.sort(reverse=True)
print(lst)   ####   降序


lst.reverse()
print(lst)    #### 这个也是 降序的操作


lst = [4,6,7,9,8,11,22,13,15]
print(len(lst))   ####  求列表的长度    9  

三 列表的嵌套 

就是 列表里边还有 列表的操作 ,一层一层的数,注意 数数的时候,是从 0 开始的

四 元祖和元祖的嵌套

元祖: 俗称不可变的列表,又被称为只读 列表,元祖也是 python 的基本数据类型,用 () 括起来的,里边可以放

          任何数据类型,, 查询 可以   ,   切片 也 可以,  循环也可以,   就是不能 改..........想改可以换成列表,再进行

注意 注意  注意

如果元祖中只有一个元素,后面必须加 " ," 

tu = (1,)
print(type(tu))

五  range  

     range 可以帮我们获取到一组数据,通过 for 循环能够获取到这些 数据

for num in range(10):   ##  左闭右开区间  也就就是 10 是取不到的,但是 左边从0 开始
 print(num)   ##     0 1 2 3 4 5 6 7 8 9
for num in range(1, 10, 2):
 print(num)    ## 1 3 5 7 9
for num in range(10, 1, -2): # 反着来, 和切⽚⼀样
 print(num)     ### 10 8 6 4 2 

猜你喜欢

转载自www.cnblogs.com/wenqi2121/p/10211855.html