列表的操作方法

列表增

li = ['alex','peter','erric']

append

li.append('Jake')

li = ['alex', 'peter', 'erric', 'egon', 'jake']

while 1:
    name = input("input new names,input q to exit:")
    if name.strip().lower() == "q":
        break
    else:
        li.append(name)
print(li)

 

insert

li.insert(4,'Luke')

li = ['alex', 'peter', 'erric', 'egon', 'jake']
li.insert(3, 'Luke')
print(li)

 

extend

li.extend('what') #可迭代对象基本元素依次添加

li = ['alex', 'peter', 'erric', 'egon', 'jake']
li.extend("alice")
li.extend([12,15,21,55])
print(li)

 

列表删

pop

按索引删

 li.pop(1) 返回值为删除的元素,默认删最后一个

remove

按元素删

li.remove('alex')

clear

li.clear() 清空列表

del

del li 删除列表

del li[2:5] 切片删除元素

 

列表改

直接赋值

li[0] = 'newname'

li[1] = [1,2,3]

li[0:2] = 'abcdefg' 元列表前2个元素替换为'a','b','c',.... 可迭代元素的每个元素

li[0:3] = [1,2,3,'alex','bill']

 

列表查

循环

for i in li:
    print(i)

直接切片

print(li[0:2])

 

公共方法

l = len(li)  长度

num = li.count('alex') 'alex'出现的次数

pos = li.index('alex') 'alex'的索引,没有'alex'报错

li.sort() 按从小到大排序(正向排序)

li.sort(reverse=True) 倒叙排序

print(li)

li.reverse() 列表反转

join

s = 'alex'

s1 = '_'.join(s) s为可迭代对象,每个可迭代对象之间用前置参数连接

print(s1) 输出a_l_e_x

#join输出结果为字符串,用于列表转换成字符串
s = 'alex'
s1 = '='.join(s)
print(s1)

#列表转换为字符串
li = ['alex', 'peter', 'egon']
s2 = ' '.join(li)
print(s2)

#字符串转换成列表用split

 

range

相当于一个数字列表

for i in range(0, 100): #range相当于一个数字列表
    print(i)
for i in range(100):
    print(i)
for i in range(0, 10, 3):
    print(i)

 

循环打印嵌套列表

li = ['peter', 'luke', 'alice', 'daniel', ['egon', 'erric', [3, 6], 12, 5], 'tony', 5]
for i in li:
    if type(i) == list:
        for j in i:
            print(j)
    else:
        print(i)

 

#计算用户输入数据有几个整数
s = input("请输入:")
count = 0
for i in s:
    if i.isdigit():
        count += 1
print(count)

#计算用户输入数据有几个数字块
s = input("请输入:")
for i in s:
    if i.isalpha():
        s = s.replace(i, ' ')
print(s)
s1 = s.split()
print(s1)
print(len(s1))

 

posted @ 2020-03-25 12:07  vivagoal  阅读(184)  评论(0)    收藏  举报