栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python基础学习日记--列表

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python基础学习日记--列表

首先给个基本的感觉,由于是入门了C才来学习的Python,因此列表给我的直观感受更像一个数组,而且是一个兼容性很强的数组。

example:

lst = ['我','是','新','手','勿','喷'] or lst1 = ['我','今','天','38','years','....','old']

说白了,列表的特点是:

1.元素按顺序排列,和C中的数组一样,index从0开始取,但是列表提供了从右向左的索引

如:lst[0]==lst[-6] 从右向左的索引是从“-1”开始,向左依次加一。

2.索引和数据一一映射,同C

3.列表可以存储重复的数据,任意类型的数据可以混合存储。

4.根据需要动态分布内存:就不用担心申请的空间不够

lst = ['我','今','年',28,'岁']

print("lst的地址空间",id(lst))
temp=lst[0]
print("lst[0]的地址空间",id(temp))


------------------------------------------
运行结果如下:
lst的地址空间 2832365401408
lst[0]的地址空间 2832365388944

   返回索引:.index(item)      :返回列表中item的索引,如果没有该元素,则抛出异常

                      .index(item,a,b) 在列表的[a,b)区间内查找item元素并返回index,若未找到则抛出异常。

lst = ['我','今','年',28,'岁']
print(lst.index(28))
print(lst.index('我'))

#在区间[a,b)内查找元素item,并返回索引  .index(item,a,b)
print(lst.index(28,2,4))
print(lst.index(28,2,3))
---------------------------------------------------------
3
0
3
    print(lst.index(28,2,3))
ValueError: 28 is not in list

  列表的切片操作:lst[start:stop:step]

          返回原且列表的拷贝段,解释上表达式:start:开始切片的下标,包括此下标,缺省为0

                                                                           stop:结束切片的下标,不包括此下标,缺省为列表末尾

                                                                           step:步数,类似于start=start+stop,缺省为1,因为列表的索引可为负,所以step可以为负数。

lst = ['我','今','年',28,'岁']


lst2=lst[1:5:2]
print(lst2)
lst1=lst[:4:1]
print(lst1)
lst3=lst[0::1]
print(lst3)
lst4=lst3[0:5]
print(lst4)
---------------------------------------------------------------
['今', 28]
['我', '今', '年', 28]
['我', '今', '年', 28, '岁']
['我', '今', '年', 28, '岁']

列表元素的增加:

.append()函数可以在列表末尾增加一个列表,并把此列表作为列表的一项数据单元

.extend(item) 函数也是有着在列表末尾添加数据的功能,但是它可以将列表对象的数据转化为普通数据,依次插入目标列表对象。

.insert(index,item) 在索引位置index处插入元素item

切片插入:lst[1:]=lst2  把下标1开始到列表末尾的元素删除,并用lst2中元素替代

lst = ['我','今','年',28,'岁']

lst.append(',')
print(lst)
lst.extend('才')
print(lst)
lst1=['我','爱','python',666]
lst.append(lst1)
print(lst)
lst.extend(lst1)
print(lst)
lst[5:]=lst1
print(lst)
---------------------------------------------------------------------------
['我', '今', '年', 28, '岁', ',']
['我', '今', '年', 28, '岁', ',', '才']
['我', '今', '年', 28, '岁', ',', '才', ['我', '爱', 'python', 666]]
['我', '今', '年', 28, '岁', ',', '才', ['我', '爱', 'python', 666], '我', '爱', 'python', 666]
['我', '今', '年', 28, '岁', '我', '爱', 'python', 666]

列表的删除操作:

                .remove(item) 移除列表中第一个值为item的元素

                .pop(index) 移除索引为index的元素,缺省为最后一个元素,类似于C的STL库里的pop,但是可以指定索引项进行删除。

               切片删除: lst=lst1[1:3] 其实就是把原列表索引为1到2的元素赋值给新的列表,对原来的列表对象没有影响。

                                  lst[1:3]=[] ,这种切片删除直接在原列表对象上进行删除操作

               清楚列表的所有内容:lst.empty() ,结果导致lst的列表为空,所有内容均被删除。

              删除该列表:del lst 把名为lst的列表删除

列表的排序

      lst.sort(reverse=true/flase) , 缺省为false

 也可以使用 sorted(lst)

              

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/846371.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号