Python基础 列表和元组

列表:

列表是一个有序的,可修改的,元素以逗号分割,以中括号包围的序列。

因为列表可以修改,所以我们可以通过列表的索引来修改列表。

格式:变量名= [元素1,元素2,元素3,...]

作用:存储多个数据

1.查看列表的类型

1
2
3
4

 

>>> name = ["Eric","Mary","Tom"]
>>> type(name)
<class 'list'>
>>> 

2.通过索引获取列表中的元素:

lst = [1, 2.34, 'hello', False]
num = lst[1]
print(num)

 输出结果:        2.34

3.使用for循环 遍历列表每一个元素

lst = [1, 2.34, 'hello', False]
for i in lst:
    print(i)

输出结果:      1

                          2.34

                          hello

                          False

4.列表的增删查改:

 

 

列表的添加

append

追加,在列表的尾部加入指定的元素

 

extend

将指定序列的元素依次追加到列表的尾部(合并),不会去重复内容

 

insert

将指定的元素插入到对应的索引位上,注意负索引倒序插入,超过索引就会在末尾插入  

 

 

列表的删除

pop

弹出,返回并删除指定索引位上的数据,默认删除索引为-1的数据(从右向左删除)

 

remove

从左往右删除一个指定的元素

 

del

删除整个列表或列表的数据,del是python内置功能,不是列表独有的

列表的查找

注:列表没有find方法

count

计数,返回要计数的元素在列表当中的个数

 

index

查找,从左往右返回查找到的第一个指定元素的索引,如果没有找到,报错

列表的排序

reverse

顺序倒序

 

sort

按照ascii码表顺序进行排序

append:

lst = ['悟空', '八戒', '唐僧']

lst.append(1,'白龙马')

print(lst)

输出结果:            ['悟空', '八戒', '唐僧','白龙马']

insert:

lst = ['悟空', '八戒', '唐僧']

lst.insert(1,'白骨精')

print(lst)

输出结果:        ['悟空','白骨精', '八戒', '唐僧']

extend:

lst = ['悟空', '八戒', '唐僧']

lst1 = ['宋江', '李逵', '悟空']

lst.expend(lst1)

print(lst)

输出结果:   

['悟空', '八戒', '唐僧','宋江', '李逵', '悟空']
列表之间也可以相加,将所有元素放入到一个新的列表中,并且不会自动去重

      lst2 = lst + lst1

      print(lst2)

     输出结果:   ['悟空', '八戒', '唐僧','宋江', '李逵', '悟空']

5.删除:

pop()

lst = ['悟空', '八戒', '唐僧']

lst.pop(0)

print(lst)

输出结果:    ['八戒', '唐僧']

remove()

lst = ['悟空', '八戒', '唐僧']

lst.remove('八戒')

print(lst)

  输出结果:['悟空', '唐僧']

clear()

lst = ['悟空', '八戒', '唐僧']

lst.clear()

print(lst)

输出结果:    [ ]

del :

lst = ['悟空', '八戒', '唐僧']

del lst            #del	删除整个列表或列表的数据,del是python内置功能,不是列表独有的
                   # # 列表的查找

print(lst)

输出结果:   

6.修改操作:

lst = ['悟空', '八戒', '唐僧']

lst[0] = '白龙马'

print(lst)

输出结果:   ['白龙马', '八戒', '唐僧']

7.查询操作:

count()    index()

lst = ['悟空', '八戒', '唐僧', '悟空']

ret = lst[0]

print(ret)

num = lst.count('八戒')

print(num)

num1 = lst.index('悟空')
print(num1)

length = len(lst)
print(length)

ret = lst.index('悟空', 1, 4)
print(ret)

输出结果:   ['悟空']]
                       1
                       0
                       4
                       3

8.列表的切片:

lst = ['a', 'b', 'c', 'd', 'e']

print(lst[0:4:2])

输出结果:  ['a', 'c']

9.列表的排序:

sort():

lst = ['tom', 'james', 'jerry', 'zs', 'ls']

lst.sort()  #由小到大排序

print(lst)

lst.sort(reverse=True)#由大到小排序

print(lst)

输出结果:  ['james', 'jerry', 'ls', 'tom', 'zs']

                      ['zs', 'tom', 'ls', 'jerry', 'james']

10.翻转:

  reverse()

lst = ['tom', 'james', 'jerry', 'zs', 'ls']

lst.reverse()   

print(lst)

输出结果:   ['ls', 'zs', 'jerry', 'james', 'tom']

元组:

元组特点:元组是有序的,不能修改。

元组的定义:

       .通过()来定义:变量名=(1,2,3,4,) 。以逗号分割的,以小括号包围的序列。

    .   通过tuple函数定义: lst=[1,2,3,4] 变量名=tuple(lst)

元组的优点:由于元组不可变,所以遍历元组比列表要快(较小的性能提升)。

1.元组的创建:

tup = (1,2.2,True,'hello')

print(tup)

print(type(tup))

输出结果:   (1, 2.2, True, 'hello')
                       <class 'tuple'>

2.访问元组:

通过索引:

tup = (1,2.2,True,'hello')

ret = tup[4]    #  注意索引越界的问题

print(ret)

输出结果:

通过切片:

tup = (1,2.2,True,'hello')

tup1 = tup[0:4:1]

print(tup1)

输出结果: (1, 2.2, True, 'hello')

3.访问多维元祖:

tup = (('zs',10),('ls',11),('ww',12))

print(tup[1][0])

输出结果:  ls

4. 使用多个变量来接受元组的值 注意:变量中的个数和元组中的值得个数必须一一对应

tup = (('zs',10),('ls',11),('ww',12))

name,age,height,weight = ('zs',18,1.64,150)

print(name)

print(age)

print(height)

print(weight)

for name, age in tup:     #for 循环遍历多重元组
    print(name,age)

输出结果: zs
                   18
                   1.64
                   150
                   zs 10
                   ls 11
                   ww 12

5.tuple()函数和list()函数

lst = [1,2,3]

print(tuple(lst))

tup = ('a','b','c')

print(list(tup))

输出结果:  (1, 2, 3)
                      ['a', 'b', 'c']

6.元组的方法:

tup = ('a','b','c','c','b','a','x')

print(tup.index('b'))

print(tup.index('a',2,len(tup)))

print(tup.count('a'))

输出结果:   1

                       5

                       2

猜你喜欢

转载自blog.csdn.net/weixin_43567965/article/details/85331583