Python自学之路之day04-基本数据类型(list、tuple)

一、列表

  1.1 列表介绍

    列表是python的基础数据类型之一 ,其他编程语⾔也有类似的数据类型. 比如JS中的数组, java中的数组等. 它是以[ ]括起来, 每个元素⽤' , '隔开⽽且可以存放各种数据类型:

lis = ["流浪","光辉","德玛","皇子",1,("","","",""),["我是列表",]]

  列表相比于字符串. 不仅可以存放不同的数据类型. 而且可以存放大量的数据. 32位python可以存放: 536870912个元素, 64位可以存放: 1152921504606846975个元素.而且列表是有序的(按照你保存的顺序),有索引, 可以切片方便取值.

  1.2 列表的索引和切片

# 根据索引取元素
lis = ["流浪","光辉","德玛","皇子"]
print(lis[0])
print(lis[1])
print(lis[2])
print(lis[3])

# 列表修改
lis[0] = "阿狸"
print(lis)

# 列表切片
print(lis[0:3]) #顾头不顾尾
print(lis[:3])   #同上
## 步长为2
print(lis[1::2]) # ['光辉', '皇子']
print(lis[1:-1]) # ['光辉', '德玛']
print(lis[-1:-3:-2]) # ['皇子']

   1.3 列表增删改查

lst = ["盖伦","流浪","皇子","光辉","蒙多","剑圣"]
# 增(append)
lst.append("琴女")
print(lst)

## 指定索引位置后插入
lst.insert(1,"刘德华")
print(lst)

## 迭代添加,把列表的每个元素,新增到lst列表
lst.extend(["AD","AP"])
print(lst)

#删除(pop, remove, clear, del)
## pop 删除最后一个,并返回删除的元素
print(lst.pop())

## pop 删除指定索引位置元素
print(lst.pop(0))

## remove 删除指定元素,删除的元素若不存在,则报错
lst.remove("光辉")
print(lst)


# clear 清空列表
lst.clear()
print(lst)

# del 删除指定元素位置元素
del lst[1]
print(lst)

## 切片删除,顾头不顾尾
del lst[1:3]
print(lst)

   1.4 修改

## 修改0索引位置值为"不盖伦"
lst[0] = "不盖伦"
print(lst)

## 切片替换
lst[1:4] = ["替换了1-4索引的值"]
print(lst)

## 带步长切片替换,给定的元素不够时,会报错
lst[1:5:2] = ["替换了1-4索引的值","步长为2"]
print(lst)

  1.5 其它操作

lst = ["盖伦","流浪","皇子","光辉","蒙多","剑圣","光辉"]
## 查询"光辉"出现的次数
print(lst.count("光辉"))

## sort排序 默认升序
lst_sort = [2,1,6,3,22,12,4]
lst_sort.sort()
print(lst_sort)

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

 二、列表嵌套

lst = ["流浪",10,["AD","AP",["法师","打野"]],"123"]
## 找到元素"法师"
print(lst[2][2][0])

## 找到"AD AP"
print(lst[2][0:2])

## 找到流浪的浪字
print(lst[0][1])

## 拿到AD变为小写
print(lst[2][0].lower())

## 把流浪更改为流飞
lst[0] = lst[0].replace("","")
print(lst)

三、元组和元组嵌套  

    元组: 俗称不可变的列表.又被成为只读列表, 元组也是python的基本数据类型之⼀, ⽤小括号括起来, 里面可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能改.

tu = ("流浪","光辉","德玛","剑圣")
## 打印元素
print(tu[0])
print(tu[1])
print(tu[2])
print(tu[3])

## 切片打印,包头不包尾
print(tu[1:3])

关于元组中元素修改:

  这里元组的不可变的意思是子元素不可变. 而子元素内部的子元素是可以变, 这取决于子元素是否是可变对象,元组中如果只有一个元素. 一定要添加一个逗号, 否则就不是元组  

posted @ 2019-08-06 15:49  小哥boy  阅读(65)  评论(0)    收藏  举报