一以贯之

python:数据类型list

一、列表list

  list是python中基础的数据类型之一,它是以[ ]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型

li = ['alex', 123, True, (1, 2, 3, ' wusir '), [1, 2, 3, '小明'], {'name': 'alex' }]

列表相比与字符串,不仅可以存储不同的数据类型,而且可以存放大量数据。

而且列表是有序的,有索引值,可切片,方便取值。

  1.增

  append在最后插入元素

ls = [ 1, 'a', 'b', 2, 3, '老男孩']
ls.append('alex')
print(ls)
ls.append(565)
print(ls)
ls.append([1, 2, 3])
print(ls)
ls.append({'name': 'jin'})
print(ls)

   添加新员工

lname_list = ['jin', 'ai', 'lao', 'hu','you']

while True:
    name = input('请输入要添加的员工名:Q/q')
    if name.upper() == 'Q':
        break
    else:
        name_list.append(name)
        print('添加成功%s' %name)
print(name_list)

  insert 插入  :根据索引添加元素

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]

li.insert(0,'haha')
print(li)
li.insert(-1,'huhu')
print(li)

  entend迭代的去增,到最后

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
li.extend('abc')
li.extend([123,1])
li.extend({'name':'ha'})
print(li)  #[1, 2, 'a', 'b', 'jin', 'hu', 'qing', 'a', 'b', 'c', 123, 1, 'name']
print(li[-1])  #name

  

  删

    pop按索引删除,有返回值,返回删除的元素       

        无索引值默认删除最后一个, 超出索引会报错
li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
li.pop()#无索引值默认删除最后一个
print(li)
li.pop(0)
li.pop(-2)
print(li)
s= li.pop()
print (s)  #1 

    remove按元素删除,如果元素不存在报误

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
li.remove('a')
print(li)
li.remove(2)
print(li)
li.remove('nihao')

    clear:清空内容

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
li.clear()
print(li)

    del:删除列表,删除后再打印列表

      可以按切片去删除

del li[:-2]
del li[-2:]
del li[:5:2]
 print(li)
 del li
print (li)

 

  改

    按索引改

    

print(li[1])
li[1] = 'A'
print(li)
li[1] = [11, 22, 33]#将列表一起添加到新列表中
print(li)
li[1] = {'name': 'nihao'}
print(li)

   按切片改:

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
li[:3] = 'ASD'
print(li)
li[:2] = 'l'
print(li)
li[:2] =[11,22,33,44]#将列表内的元素,逐一添加到新列表中
print(li)
print(li[3])

 

  查

    用索引,切片,for循环查看

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
print(li[1])
print (li[:3])
for i in li :
    print (i)

  

 

  其他方法

    sort  从小到大,正向排序

l1 = [1, 2, 1, 7, 5, 4, 9, 8, 3]
l1.sort()
print(l1)
l1.sort(reverse= True)#从大到小,反向排序
print(l1)

    reverse反转排序

li.reverse()
print(l1)

    index通过元素找索引

li = [1, 2, 'a', 'b', 'jin', 'hu', 'qing',]
print (li.index('a'))

  还有len长度,count计数

  list的嵌套

li = [1,2,'alex',['100','wusir',99,],22]
#1.将alex变成首字母大写的Alex
li[2] = li[2].capitalize()
print(li)
#2.将wusir变成全部大写的wusir放到原处
li[3][1]= li[3][1].upper()
print(li)
#3.将99加1放回原处
li[3][2]= li[3][2]+1
print (li)

  

  range :指定范围生成指定数字

   

for i in range(100) :
    print(i)
for i in range(0,10,2):
    print(i)
for i in range(10,0,-1):#可以加步长
    print(i)
for i in range (-2,0,1):
    print (i)
li = [2,3,'alex',4,5]

for i in range (0,len(li)):
    print (li[i])

  

 

 

 

 


 

posted on 2018-07-25 15:04  凡夫or俗子  阅读(200)  评论(0编辑  收藏  举报