day04 python列表 元组 range()

day04 python
 
一.列表
1.什么是列表
    列表是可变的数据类型: 和字符串不同, 做的操作直接改源数据
    列表由[]来表示, 每项元素用逗号隔开.列表什么都能装,能装对象的对象
    列表可以装大量的数据
 
2.列表的索引和切片
    和字符串的索引和切片用法一样    
 
3.列表的增删改查
    增
lst = [1,2,3,4]
lst.append('5')     #追加, 加到最后
print(lst)
 
lst.insert(0, '0')      #插入, 后面的项依次向后移动, 效率低
print(lst)
 
lst.extend(['bajie'])   #扩展, 迭代添加, 根据迭代的对象进行迭代
print(lst)
 
lst.extend('bajie')     #扩展, 迭代添加, 根据迭代的对象进行迭代
print(lst)
    删
print(lst.pop(2))   #弹出index的元素, 默认:删最后一个, 返回pop 删掉的元素
print(lst)
 
print(lst.remove(1))    #删哪个元素, 没有返回值, 如果不存在, 会报错
print(lst)
 
del lst[1]      #切片和索引删
print(lst)
 
lst.clear()     #清空, 结果是空列表
print(lst)
    改
lst[0] = 'bajie'    #索引替换
print(lst)
 
lst[0:2] = ['bajie']      #切片改, 是迭代改
print(lst)
 
lst[0:2] = 'bajie'      #切片改, 是迭代改
print(lst)
 
lst[::2] = ['2','3','4']    #步长不是1时, 要注意改的数和要改的数要一样
print(lst)
 
lst = ['bajie', 'wukong', 'datang']
for item in lst:
    print(item)
 
4.列表的嵌套
lst1 = [1,2,3]                     #一维
lst2 = [1,2,3,[4,5,6]]             #二维
lst3 = [1,2,3,[4,5,6,[7,8,9]]]     #三维
#lst4 ... ...                      #以此类推
 
print(lst3[3][3][2])               #取到的是 9 , 这种操作叫做降维操作
 
5.列表的其他操作
lst = [2,3,1,6,88,3,3,2,55,9]
 
lst.sort()              #排序. 默认是升序
print(lst)
 
lst.sort(reverse=True)  #排序. 降序
print(lst)
 
lst.reverse()           #反转
print(lst)
 
len(lst)                #求什么的长度
 
二.元组
    只读列表, 只能看,啥都不能干
    使用()表示元组
(1,)     #单元素元组, 要加个逗号
print(tuple())    #空元组, 要这样写
tu = (1, 2, 3, ['1','2'])   #列表虽然是不可变的, 但是里面的元素如果是可变的, 那么这个可变的元素的内容可变
tu[3][0] = 'bajie'        #元组的第一层是不能进行赋值的, 内部元素的内容是没有要求的
print(tu)
    
三.range()
    是一个可迭代对象
for i in range(10):     #默认从 0 开始, 猜不到结尾
    print(i)
for i in range(1,10):   #猜到了开头, 猜不到结尾
    print(i)
for i in range(1,10,2):     #支持步长, 步长也支持负数
    print(i)
lst = ['bajie','wukong','datang','laosha']        # lst 的长度 len(lst)
for i in range(len(lst)):                         # 元素下标从 0 开始, 最后一个下标比 len(lst) 小一个
    print(lst[i])                                 # range() 从0开始, 又不猜最后一个: 所以 range(len(lst)) 迭代出来就对应列表的元素的下标
 
print(range(10))                            #python3 中的range 和python2 中的xrange 是一个东西
>>>range(0, 10)
 
print(range(10))                            #python2 有两个range
>>>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]        
print(xrange(10))
>>>xrange(10)
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/aiaii/p/12088293.html