基础数据类型之列表,元组

一:基础数据类型之字符串(续)

1,join的用法

" xxx".join( ): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。具体程序如下:

s = 'alexeweuesir'
s1 = '*'.join(s)
print(s1)

二:列表(list)是什么?

   列表是python中的基础数据类型之一,它是以[]括起来,每个元素以逗号隔开,而且可以存放各种数据类型。比如:li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]。列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

三:列表(list)的相关操作

1,查

列表的索引与切片取值,通过此方法所取得的元素类型与原列表的数据类型相同。具体程序如下:

l1 = ['alex',True,'wusir','ritian','taibai',3,2]
print(l1[0],type(l1[0]))
print(l1[1],type(l1[1]))
print(l1[0:3:2])
print(l1[0:4])
View Code

2,增

列表的有关增的操作主要有append(在列表尾部追加一个元素),insert(通过列表的索引在指定的位置插入元素),extend(也是在列表的尾部追加元素,但与append不同,extend将它的参数视为 list,extend的行为是把这两个list接到一起,append是将它的参数视为element,作为一个整体添加上去的)。具体程序如下:

li1 = [1,'a','b',2,3,'a']
li1.append('aaa')
print(li1)


l1 = ['alex',True,'wusir','ritian','taibai',3,2]
l1.insert(3,'egon')
print(l1)


l1 = [1,'alex',True,[1,2,3],(2,3,4),{'name':'alex'}]
l1.extend('太白金星')
l1.extend([1,2,33,4])
print(l1)
View Code

3,删

列表中有关于删除的操作主要有pop(根据索引删除列表中的指定元素,如果没有填写索引的话,就默认删除列表中的最后一个元素,而且该操作有返回值,返回值就是删除的元素),remove(按照具体的元素去删除),clear(直接清空列表中的元素),del(根据索引与切片删除列表中的元素) 相关程序如下:

l1 = ['alex',True,'wusir','ritian','taibai',3,2]
l1.pop() #默认删除最后一个
ret = l1.pop(4)
print(ret)  # 有返回值
print(l1)

# remove 按照元素去删除
l1.remove('alex')
print(l1)

clear  #清空列表
l1.clear()
print(l1)

# del  功能1 删除列表
del l1
print(l1)
# 功能二 可以按照切片,按照索引去删除
del l1[0]
print(l1)
del l1[0:3]
print(l1)
View Code

4,改

列表中关于改的操作主要是通过索引与切片定位元素,然后再进行修改,具体程序如下:

l1 = ['alex','taibai',True,'wusir','ritian',3,2,True,]
#
#按照索引去改
# l1[0] = '男神'
# print(l1)

#按照切片去改
# l1[0:2] = ['屌丝','alex']
# l1[0:2] = '化工哥,树脂'
# print(l1)
View Code

5,列表中的一些其它操作

l1 = [1,3,6,8,7,4,2,9,10]
# len 长度
print(len(l1))
# count 出现次数
ret = l1.count(2)
print(ret)
# index 通过元素找索引
print(l1.index('3'))
# sort 从小到大排序
l1.sort()
print(l1)
#sort(reverse)  从大到小
l1.sort(reverse=True)
print(l1)
#倒序
l1.reverse()
print(l1)
View Code

6,列表的嵌套

l1 = ['小新','egon','wusir',[99,'tiabai','ritian',[,2,3]],2]
a = l1[1].capitalize()
l1[1] = a
l1[1] = l1[1].capitalize()
l1[1] = 'Alex'
print(l1)
print(l1[0])
print(l1[3])
l = l1[3]
s = l[1].upper()
l1[3][1] = s
l1[3][1] = l1[3][1].upper()
print(l1)
l1[3][0] = '100'
print(l1)
l1[3][0] = str(l1[3][0] + 1)
print(l1)
View Code

三:元组(tuple)

# 儿子不能更改,但是孙子有可能更改
tu1 = (1,2,'wusir',[1,2,3],(2,3,4),'taibai',True)
tu1[3].pop(1)
print(tu1)
tu1[3].append('taibai')
print(tu1)
print(len(tu))
print(tu.count(1))
print(l.count(1))
print(tu.index('wusir'))
View Code

四:range
range当做:范围列表[],列表中的元素是数字,且可控的有效数字范围一般与for 配合使用。

for i in range(1,10):  #[1,2,3,4...9]
    print(i)
for i in range(1,101):  #
    print(i)
for i in range(11):  #
    print(i)
for i in range(1,10,2):  # [1,3,5,7,9]
    print(i)
for i in range(10,0,-1):
    print(i)
for i in range(10,-2,-1):
    print(i)
View Code

五:补充内容:
例:要实现列表  l1 = [1,2,3,'alex',[2,3,'wusir'],7] 中和其嵌套的小列表中的每一个元素的打印,程序如下:

l1 = [1,2,3,'alex',[2,3,'wusir'],7]
for i in l1:
    if type(i) == list:
        for j in i:
            print(j)
    else:
        print(i)
View Code

 

posted @ 2018-01-24 16:49  扬帆起航111  阅读(224)  评论(0编辑  收藏  举报