元组:

元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")!但是元组中的列表可以修改。

#元组内容不可修改,如下:
i = ('大雄','王晓明',['小红','小刚','花花'],'你好')
i[0] = '哆啦A梦'
print(i)

报错:Traceback (most recent call last):
        File "G:/lod_boy_S9_Python/4Day/test.py", line 176, in <module>
        i[0] = '哆啦A梦'
        TypeError: 'tuple' object does not support item assignment


#修改元组中列表里面的元素 可以成功
i = ('大雄','王晓明',['小红','小刚','花花'],'你好')
i[2][0] = '哆啦A梦'
print(i)
# 输出:('大雄', '王晓明', ['哆啦A梦', '小刚', '花花'], '你好')

 

列表:

增:

 

#append 增加新数据到列表最后
li = ['alex','wusir','egon','女神','taibai']
li.append('lidongxu')
print(li)
#输出:['alex', 'wusir', 'egon', '女神', 'taibai', 'lidongxu']

#insert 增加新数据到列表指定位置(插入)
li = ['alex', 'wusir', 'egon', '女神', 'taibai', 'lidongxu']
li.insert(2,'liuyi')
print(li)
#输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu']

#extend 迭代添加 数据会被分解到最小元素 例:'小明' 会被分解为 '小', '明'
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu']
li.extend('小明')
print(li)
#输出结果:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']

 

 

删:

 

#pop 有返回值
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li.pop() #没有值 默认删除最后一个
print(li)
#输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小']

#按照索引删除
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
name = li.pop(0) #按照索引删除
print(name,li)
#输出:alex ['wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']

#remove 按照元素删除 无返回值
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li.remove('')
print(li)

#clear 清空列表
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li.clear()
print(li)
#del删除列表 会报错
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
del.li
print(li)

#切片删除列表中某一部分
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
del li[0:3]
print(li)
#输出:['egon', '女神', 'taibai', 'lidongxu', '小', '明']

 

 

改:

#按照索引修改
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li[0] = 'lidongxu' #按照索引修改
print(li)
#输出:['lidongxu', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']



#会拆分到最小单元
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li [0:2] = '你好啊'
print(li)
#输出:['你', '好', '啊', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']



#完整替换切片部分
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
li [0:2] = ['1。2。3']
print(li)
#输出:['1。2。3', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']

 

查:

 

for循环
#按照索引数循环
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
for i in li :
     print(li)
#输出:
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']


#按照索引数循环打印出切片内容
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
for i in li :
    print(li[0:2])
# 输出:
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']
#     ['alex', 'wusir']


len
#打印列表长度
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
i = len(li)
print(i)
#输出:9


count
#某一元素或字符串出现的次数
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
i = li.count('alex')
print(i)
#输出:1 PS:列表中只能查引号中的元素。



index
#索引位置,,没有会报错。列表中只能用index
li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
print(li.index('wusir'))
# 输出:1

sort
#从小到大排序(升序)
li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
li.sort()
print(li)
# # 输出:['1', '2', '3', '4', '5', '6', '7', '8', '9']

#从大到小排序(降序)
li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
li.sort(reverse=True)
print(li)
# # 输出:['9', '8', '7', '6', '5', '4', '3', '2', '1']

reverse
#列表整体反转
li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
li.reverse()
print(li)
# # 输出:['8', '9', '7', '5', '4', '6', '2', '3', '1']

 

 

列表的嵌套:
#打印列表中小列表的元素
li = ['alex', 'wusir', 'liuyi',  '女神', 'taibai', ['8','3','lidongxu','1'],'', '']
print(li[5][2])
# 输出:lidongxu

#替换某个元素的首字母大写
li = ['alex', 'wusir', 'liuyi',  '女神', 'taibai', ['8','3','lidongxu','1'],'', '']
li [0]  = li[0].capitalize()
print(li)
# 输出:['Alex', 'wusir', 'liuyi', '女神', 'taibai', ['8', '3', 'lidongxu', '1'], '小', '明']

 

其他操作:
join
#衔接每个元素 ‘中的符号自定义’
s = ['lidongxu','yang']
sum = '_'.join(s) #衔接每个元素 ‘中的符号自定义’
print(sum)
# 输出结果:lidongxu_yang

rang
只存数字的列表,同样顾头不顾尾
for i in range(3,10) :
    print(i)
#输出:3.....9


for i in range(10) :
    print(i)
#输出结果:0......9


for i in range(0,10,4) :
    print(i)
#输出:0 3 6 9 PS:如果步长为2 输出为:0 2 4 6 8  步长为4 输出为:0 4 8


#反响
for i in range(10,0,-4) :
    print(i)
#输出:10 8 6 4 2 步长为-3 输出为:10 7 4 1  步长为4 输出为:10 6 2