day4之列表和元组的基本操作,range

列表:

是我们最以后最常用的数据类型之一,

通过列表可以对数据实现最方便的存储、修改等操作,而且他里面可以存放各种数据类型

例:li = ['alex',23,Ture,(1,2,3,'wusir'),[1,2,3,'小明',],{'name':'alex'}]

列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

对列表的操作

1、增:append、insert、extend

 

li = [1,2,3,4,5,56,4,2,2]
li.append('342')#在列表在最后面追加
print(li)
li.insert(3,'sf')#通过索引插入
print(li)
li.extend('sergw')#可以迭代着追加
print(li)


》》》
[1, 2, 3, 4, 5, 56, 4, 2, 2, '342']
[1, 2, 3, 'sf', 4, 5, 56, 4, 2, 2, '342']
[1, 2, 3, 'sf', 4, 5, 56, 4, 2, 2, '342', 's', 'e', 'r', 'g', 'w']

 

2、删:pop、del、remove、clear

li = [1,2,3,4,'faef','s','ef','ef',5,56,4,2,2]
s1 = li.pop(3)#按索引删除并返回值
print(li)
print(s1)
del li[1:3] #按照位置去删除,也可切片,也可以删除列表(在内存级别删除),删除没有返回值。
print(li)
li.remove('s')#按元素删除
print(li)
li.clear()
print(li)

》》》
[1, 2, 3, 'faef', 's', 'ef', 'ef', 5, 56, 4, 2, 2]
4
[1, 'faef', 's', 'ef', 'ef', 5, 56, 4, 2, 2]
[1, 'faef', 'ef', 'ef', 5, 56, 4, 2, 2]
[]

3、改:按索引、切片

li = [1,2,3,4,'faef','s','ef','ef',5,56,4,2,2]
li[4] = 'abc'#按索引去改
print(li)
li[:3] = 'ABCDEF'#按切片去改(相当于迭代着去修改,位置不够自动填充)
print(li)

》》》
[1, 2, 3, 4, 'abc', 's', 'ef', 'ef', 5, 56, 4, 2, 2]
['A', 'B', 'C', 'D', 'E', 'F', 4, 'abc', 's', 'ef', 'ef', 5, 56, 4, 2, 2]

4、查:for循环

li = [1,2,3,4,5,56,4,2,2]
for i in li:
    print(i)

》》》
1
2
3
4
5
56
4
2
2

5、测长度len、数数count、翻转reverse、排序sort、倒序reverse = False:

li = [1,2,3,4,5,56,4,2,2]
print(len(li))#长度
print(li.count(2))
print(li.index(56,0,8))#索引
li.reverse()#列表翻转
print(li)
li.sort()#列表元素排序
print(li)
li.sort(reverse = True)#列表元素倒序
print(li)

》》》
9
3
5
[2, 2, 4, 56, 5, 4, 3, 2, 1]
[1, 2, 2, 2, 3, 4, 4, 5, 56]
[56, 5, 4, 4, 3, 2, 2, 2, 1]

元组:只读列表

range:

简单练习:

 1 l1 = ['wusir', 'alex', [99, ' taibai', '98'], 21]
 2 # 1,将wusir变成全部的大写。
 3 # 2,将‘taibai'变成首字母大写,其他字母小写,放回原处。
 4 # 3,用数字的相加将99 变成 字符串的 '100'.
 5 # 4,字符串的'98' 变成数字的100.
 6 l1[0] = l1[0].upper()
 7 print(l1)
 8 l1[2][1] = l1[2][1].title()
 9 print(l1)
10 l1[2][0] = str(l1[2][0]+1)
11 print(l1)
12 l1[2][2] = int(l1[2][2])+2
13 print(l1)
View Code
l1 = [22, 33, 44, 55, 66, 77, 88, 99]
for i in l1:
    print(l1.index(i))

for i in range(len(l1)):
    print(i)
l1 = ['wusir', 'alex', [99, ' taibai', '98'], 21]
for i in l1:
    if type(i) == list:
        for k in i:
            print(k)
    else:
        print(i)
View Code

 

posted @ 2018-05-02 15:21  也许VS何必  阅读(144)  评论(0编辑  收藏  举报