列表(增删改查)元组tupe

增加:有三种,append:在后面添加。Insert按照索引添加,expend:迭代着添加。
#append

li = ['lishi','alex','lili']
li.append('1220')
print(li)
输出:
['lishi', 'alex', 'lili', '1220']

li.append([1,2,3,'www'])
print(li)
输出:
['lishi', 'alex', 'lili', [1, 2, 3, 'www']]


demo

往列表添加人名

li = ['lishi','alex','lili']
while True:
    username = input('请输入名字:')
    if username.lower() == 'q':        #加lower(),即不分大小写
        break
    li.append(username)
    print(li)


#  insert  插入

li = ['lishi', 'alex', 'lili']
li.insert(1,'旧街角')
print(li)  # ['lishi', '旧街角', 'alex', 'lili']
#extend  迭代添加
li = ['lishi', 'alex', 'lili']
li1 = ['lishi', 'alex', 'lili']
li2 = ['lishi', 'alex', 'lili']
li.extend('beyond')
li1.extend('黄家驹')
li2.extend('q')
print(li)  # ['lishi', 'alex', 'lili', 'b', 'e', 'y', 'o', 'n', 'd']
print(li1)  # ['lishi', 'alex', 'lili', '黄', '家', '驹']
print(li2)  # ['lishi', 'alex', 'lili', 'q']

删除

# pop 删除   (pop 有返回值)
li = ['lishi', 'alex', 'lili']
name = li.pop(1)
print(li)
print(name)       #返回值
输出:
['lishi', 'lili']
alex

#remove 可以按照元素去删

li = ['lishi', 'alex', 'lili']
li.remove('alex')
print(li)
输出:
['lishi', 'lili']


#clear  清空列表
li = ['lishi', 'alex', 'lili']
li.clear()
print(li)
输出:
[]

#del 1、可以按照索引去删除 2、切片 3、步长(隔着删)


li = ['lishi', 'alex', 'lili','jassin','aohan']
del li[2]
print(li)
del li[1:3]
print(li)
del li[1:4:2]
print(li)
输出:
['lishi', 'alex', 'jassin', 'aohan']
['lishi', 'aohan']
['lishi']



# 改  1、索引  2、切片:先删除,再迭代着添加

li = ['lishi', 'alex', 'lili','jassin','aohan','asa']
li[0] = '女神'
print(li)
输出
['女神', 'alex', 'lili', 'jassin', 'aohan', 'asa']

li = ['lishi', 'alex', 'lili','jassin','aohan','asa']
li [0:3] = '都是女神'
print(li)  # ['都', '是', '女', '神', 'jassin', 'aohan']

li [0:2] = '都是女神'
print(li)
# ['都', '是', '女', '神', 'lili', 'jassin', 'aohan', 'asa']

li[0:2] = ['asd','fdsa',123]
print(li)
# ['asd', 'fdsa', 123, '女', '神', 'lili', 'jassin', 'aohan', 'asa']
 

 


#查(切片) 循环(for)
li = ['lishi', 'alex', 'lili','jassin','aohan','asa']
print(li[1:4])
li = ['lishi', 'alex', 'lili','jassin','aohan','asa']
for i in li:
print(i)

输出:
lishi
alex
lili
jassin
aohan
asa

# 列表嵌套
字符串不能直接改  先找到替换

li = [1,2,3,'lishi','lili',[1,'alex',3,],True]
print(li[3])
print(li[3][3])
输出
lishi
h

li = [1,2,3,'lishi','lili',[1,'alex',3,],True]
s = li[4].capitalize()  # 首字母大写
li[4]=s
#li[4] = li [4].capitalize()
print(li)
输出:
[1, 2, 3, 'lishi', 'Lili', [1, 'alex', 3], True]
#字符串不能直接改先找到替换
li = [1,2,3,'lishi','lili',[1,'alex',3,],True] s2 = li[4].replace('lili','aohan') li[4] = s2 print(li)
输出:
[1, 2, 3, 'lishi', 'aohan', [1, 'alex', 3], True]

#拼接
li[4] = li[4][0:4] + 'aohan'
print(li)
输出:
[1, 2, 3, 'lishi', 'liliaohan', [1, 'alex', 3], True]


# 列表可以直接更改
li = [1,2,3,'lishi','lili',[1,'alex',3,],True]
li[5][0] = 'jassin'
print(li)

输出:
[1, 2, 3, 'lishi', 'lili', ['jassin', 'alex', 3], True]

首字母大写,动态
li[5][1] = li[5][1].upper()
print(li)


输出:
[1, 2, 3, 'lishi', 'lili', [1, 'ALEX', 3], True]

#  列表是有序的

#列表的其他方法
  count 计数    
   sort   排序(正)
   reverse 翻转
   倒序--->先排序--->再翻转
   倒序
 
# count 计数  不能切片
sort  正序排序
计数
li = [1,2,3,1,'a',1,'a']
print(li.count('4'))


sort  正序排序
li = [2,3,1,5,4,9,7,6,10] li.sort() print(li)
输出:
[1, 2, 3, 4, 5, 6, 7, 9, 10]

倒序排序

输出:
[10, 9, 7, 6, 5, 4, 3, 2, 1]
li = [2,3,1,5,4,9,7,6,10]
li.sort(reverse=True)
print(li)
输出:
[10, 9, 7, 6, 5, 4, 3, 2, 1]


reverse  反转
li.reverse()
print(li)
输出:
[10, 6, 7, 9, 4, 5, 1, 3, 2]

index:找出元素的索引位置,可以切片

# 元组tupe(只能读,不能改,可以切片查询)

t =(1,2,3,'adsf',True,[12,2,'黎诗','jassin'],('fdsa',2,3))
print(t[3])
print(t[1:4])
输出:
adsf
(2, 3, 'adsf')
t =(1,2,3,'adsf',True,[12,2,'黎诗','jassin'],('fdsa',2,3))
for
i in t: print(i)
输出:
1
2
3
adsf
True
[12, 2, '黎诗', 'jassin']
('fdsa', 2, 3)

t[4] = False  #儿子不能更改
print(t)
输出:
报错

t =(1,2,3,'adsf',True,[12,2,'黎诗','jassin'],('fdsa',2,3))
t[5][2] = 'lishi'
print(t)

输出:
(1, 2, 3, 'adsf', True, [12, 2, 'lishi', 'jassin'], ('fdsa', 2, 3))

************range 范围,相当于可迭代对象

for i in range(1,10):
    print(i)
输出:
1
2
3
4
5
6
7
8
9
for i in range(1,10,2):
print(i)
输出:
1
3
5
7
9
1、rang,len
li = [1,2,3,4,[1,2,'太白','lishi'],2] for i in range(0,len(li)): if i == 4: for j in li[i]: # [1,2,'太白','lishi'] print(j) else:print(li[i])
输出:
1
2
3
4
1
2
太白
lishi
2


2、
for i in range(0,len(li)):
    if i == 4:
        for s in li[i]:
            print(s)
    else:print(li[i])

for i in range(0,len(li)):
    if type(li[i]) == list:
        for h in li[i]:
            print(h)
    else:print(li[i])



for i in li:
    if type(i) == list:
        index = li.index(i)
        li[index:index+1] = i
for i in li:
    print(i)

原文地址:https://www.cnblogs.com/jassin-du/p/7724256.html