Python基础数据类型之一列表list,在python中作用很强在,列表List可以包含不同类型的数据对像,同时它是一个有序的变量集合,每个变量可以存储一个地址。所有序列能用到的标准操作方法,列表也都可以使用,比如切片、索引等,python的list是可变数据类型,它支持添加 append、插入 insert、修改、删除del等操作。

Python列表list的创建

可以把python中的list列表理解为任意对像的序列,只要把需要的参数值放入到中括号[  ]里面就可以了,就像下面这样操作:

 names = ['ada','amy','ella','sandy']

列表可以包含不同类型对像,也支持嵌套:

例如a = ['a',567,['adc',4,],(1,2)]

这个列表中就包含了字符串、整型、元组这些元素,同时还嵌套了一个列表。

修改列表list中的值

列表是有序的,可以通过python list下标来修改特定位置的值。下面用举例说明的方法来介绍下如何修改列表参数:
>>>a = [1,9,9]
>>>a [0] = 9
>>>a
[9,9,9]
列表的修改操作,也可以把它看成是特定位置重新赋值的操作。

查看list地址

list内存结构 id()

遍历list

mylist = [1,2,3,4]

for i in range(len(mylist))

  print(mylist[i]) 每个元素都有一个地址

Python list 列表删除操作

python 列表删除最常用到的方法有三种:del、remove、pop,使用方法和用途也并不相同,这里先了解下del这种最方便的入门级列表删除操作方法。

现有列表 names = ['ada','amy','ella','sandy'],要求是把上面列表中的'amy'删除,思路是:先知道'amy'在列表names中的索引位置,之后配合del这个方法来删除。列表del方法具体使用方法如下:

>>>names = ['ada','amy','ella','sandy']
>>>del names[1]
>>>names
['ada','ella','sandy']

list索引

修改列表必须用索引 下标循环

for i in range(len(mylist))

  if mylist[i]==2:

    mylist[i]=3

    del mylist[i]

    break

print(mylist)

列表元素循环不能修改列表

for data in mylist:

  if data==2:

    data=3

print(mylist)

data是副本不能修改列表

mylist = [1,2,3,4,5]

print(mylist[0]) 正索引

print(mylist[-1])负索引

print(mylist[2:-1])

列表运算符

*    复制, +  归并, in, not in

得到的是新的列表

列表常用方法

sort() 排序 从小到大

reverse()反转

clear()清空

count()统计出现的次数

index()求下标

pop()弹出最后一个数据

insert() 插入新数据

insert(index下标,obj) 索引位置插入

深浅复制

深复制 copy()函数 新开辟一个空间内存 用来存新复制的列表

ylist=[1,2,3,4,5]
mylistnew=mylist.copy()
print(id(mylist),id(mylistnew))
mylist[3]=10000

print(mylist)
print(mylistnew)

浅复制

mylistnew=mylist
mylist[3]=10000
print(id(mylistnew),id(mylist))
print(mylist)
print(mylistnew) #浅复制

最新文章

  1. SQL Server调优系列基础篇(联合运算符总结)
  2. oracle中substr() instr() 用法
  3. C++开源hash项目sparsehash
  4. PowerDesigner(二)-项目和框架矩阵(转)
  5. Python学习 之 正则表达式
  6. HDOJ2003求绝对值
  7. UESTC_方老师和农场 2015 UESTC Training for Graph Theory<Problem L>
  8. angularJS的一些用法
  9. Java数据结构和算法(五)——队列
  10. scrapy-redis使用以及剖析
  11. MySQL via EF6 的试用报告
  12. Vue 使用axios获取数据
  13. RestSharp发送请求得到Json数据
  14. vue監聽屬性
  15. window.location方法获取URL
  16. RDMA over TCP的协议栈工作过程浅析
  17. Windows下的Qt Creator的安装
  18. 本地启动spark-shell
  19. A simple guide to 9-patch for Android UI
  20. 使用像素单位设置 EXCEL 列宽或行高

热门文章

  1. Spring对Jdbc的封装——JdbcTemplate的使用
  2. 指定pom文件jdk版本
  3. dubbo中拦截生产者或消费者服务方法调用
  4. adb,aapt等命令使用
  5. 数位DP 计划
  6. webpack4+vue打包简单入门
  7. python学习第五十一天os模块的用法
  8. Educational Codeforces Round 72 (Rated for Div. 2) Solution
  9. N^2取N
  10. Azure IoT 技术研究系列4