第四天

列表list

  • 初识----特点
    • 放任意类型数据 ,存储大量数据
    • 有序 索引 切片(步长)

创建列表

  1. 空列表

​ L=list()

  1. L=list("123121231564sadasdas")

    ['1', '2', '3', '1', '2', '1', '2', '3', '1', '5', '6', '4', 's', 'a', 'd', 'a', 's', 'd', 'a', 's']

  2. 列表推导式

  3. 直接创建

    L=["1","2","3"]

索引切片

增删改查

  1. append
L=["大","小","多","少","max"]
#追加

L.append("天天")
print(L.append("天天"))  #这样打不出来  None     只是执行了添加的动作
print(L)

不断添加
for i in range(30):
    name=input("请输入你的名字:")
    L.append(name)
    print(L)
    
当输入"q" 时   退出    
# while 1:
for i in range(30):
    name=input("请输入你的名字:")

    if name.upper()=="Q":
        break
    else:
        L.append(name)
        print(L)
        
        
  1. insert(2,"sasa") #在二位置增加一个"sasa"

  2. 迭代着增加-------"增加包含的最小元素"

    ​ L.extend("abcdefg") -----最小为"a" "b"

    ['大', '小', '多', '少', 'max', '天天', '天天', 'a', 'b', 'c', 'd', 'e', 'f', 'g']

    ​ L.extend["tom",] --------最小为"tom"

    ['大', '小', '多', '少', 'max', '天天', '天天', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'tom']

  1. pop-------------按照索引删除

    L.pop() 默认删除最后一个

    L.pop(2) (返回的是删除元素)

    print("L.pop(2)")

  2. remove---------------指定元素删除 如有重复的 ,默认删除左数第一个

    L.remove("大")

  3. clear

    L.clear() 清空

  4. del-----------按照索引删除 /切片

    del L[-1]

    del L[0:5:2]

L=["大","小","多","少","max"]

  1. 按照索引去改

    ​ L[0]="小" 直接改第一个的内容

    L=["小","小","多","少","max"]

  2. 按切片改

    ​ L[2:]="abcd"

    L=["小","小","a","b","c","d"]

    ​ *加步长

    ​ 一一对应,改几个 后面就应该是几个元素

    ​ L[2:]="abc" [2:] 只有三个元素 所以改"abc"三个元素

  1. 索引

  2. 切片(步长)

  3. for i in L

    ​ print(i)

嵌套

#
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# 将列表lis中的"tt"变成大写(用两种方式)。
# 将列表中的数字3变成字符串"100"(用两种方式)。
# 将列表中的字符串"1"变成数字101(用两种方式)。

lis[3][2][1][0]=lis[3][2][1][0].upper()
print(lis)
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[3][2][1][0]="TT"
print(lis)

lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[1]="3"
lis[3][2][1][2]="3"
print(lis)

lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[1]=str(lis[1])
lis[3][2][1][2]=str(lis[3][2][1][2])
print(lis)



lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[-3][-2][-1][-1]=1
print(lis)



# 打印嵌套列表中的每个元素
def Lname(L, level=0):
    for yuansu in L:
        if isinstance(yuansu, list):  # 判断是否为列表
            Lname(yuansu, level + 1)  # level+1,
        else:
            for J in range(level):
                print('\t', end='')
            print(yuansu)
A = ["H1", "H2", 1999, ["hello", "day", ["one", "two"]],"123132",[1]]

Lname(A)


元组

元组初识-------只读

只能查看 不能增删改

tu=(100,"太白",True,[1,2,3])

但是列表里面的可以改

tu[2] [1]= 3

用处: 重要数据 用户名 密码 个人信息 (不想让别人改的数据)

元组拆包 ,用来赋值

a,b=(1,2)

print(a,b)

简单应用

range

顾头不顾腚

类似于列表 自定制数字范围

range(10) 0~9

还有索引

r=range(10)

print(r[1]) #1

步长

打印1~100偶数

for i in range(2,101,2)

​ print(i)

100~1

for i in range(100,0,-1)

​ print(i)

posted @ 2020-02-22 11:33  小丁变优秀  阅读(156)  评论(0)    收藏  举报