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) #浅复制

Python List 列表list()方法的更多相关文章

  1. Python循环列表的方法

    python循环列表的几种方法: 第一,依次打印列表中的各项值. 1 #!usr/bin/env python3 2 #!-*- Coding:utf-8 -*- 3 4 ''' 5 多种循环列表的方 ...

  2. python之列表及其方法---整理集

    列表类,类名是list 通过list类创建对象,使用中括号 列表特性: 使用中括号括起来 中间用逗号分隔每个元素 元素可以是数字.字符串.布尔值.列表 列表中可以嵌套列表 列表中每个元素的下标从0开始 ...

  3. python: 列表的方法

    操作 函数 使用方法 备注 索引 index in: example.index(‘creative’) --- 1 in:example[1,] --- [’creative’, [’京东’,996 ...

  4. python清空列表的方法

    1.大数据量的list,要进行局部元素删除,尽量避免用del随机删除,非常影响性能,如果删除量很大,不如直接新建list,然后用下面的方法释放清空旧list. 2.对于一般性数据量超大的list,快速 ...

  5. python中空列表判断方法总结,欢迎补充

    --代码-- if __name__ == '__main__': l = [] print(l.__len__() == 0) print(l.__sizeof__() == 40) print(l ...

  6. Python - list 列表常见方法

    list.append(x) 介绍 在列表的末尾添加一个元素 相当于  a[len(a):] = [x] 返回值 None 栗子 # append a = [1, 2, 3] b = [4, 5, 6 ...

  7. Python 列表排序方法reverse、sort、sorted详解

    python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...

  8. Python统计列表中的重复项出现的次数的方法

    本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下:对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在 ...

  9. python之列表(list)的使用方法介绍

    python之列表(list)介绍 在python的使用过程中,我们经常会用到列表,然而经常会遇到疑惑,下面我将详细介绍下列表使用方法. 一.列表 列表经常用到的功能使增.删.改和查功能. 1. 增 ...

随机推荐

  1. SQL SERVER中求上月、本月和下月的第一天和最后一天[转]

    --上月的第一天 ),,,) ,,) --上月的最后一天 ),,,)),)+' 23:59:59' ,,)) --本月的第一天 ),,) ),)') --本月的最后一天 ),,,,)),)+' 23: ...

  2. 【狗屁不通文章生成器】代码分析 (javaScript)

    这几天在论坛上看到了一个很有意思的项目,一个生成"狗屁不通"的文章的程序.经过本人确定其的确是"狗屁不通"后,随后又好奇其实现,于是在其[GitHub]项目里( ...

  3. 《剑指offer》面试题24 二叉搜索树的后序遍历序列 Java版

    (判断一个元素均不相同的序列是否为一个BST的LRD) 书中方法:首先对于二叉搜索树,左子树中的所有元素小于根节点小于右子树中的所有元素,然后后序遍历序列最后一个元素是根节点,这是我们已知的条件.这道 ...

  4. Comet OJ C1076 [Contest #4]求和

    题目 首先我们可以通过经典容斥转化为计算\([1,x]\)的答案. 现在我们考虑一个数的个位对答案的贡献. 每做一次操作都会让个位加上十位然后取模,直到只有个位为止. 我们发现这个过程中,个位数前的系 ...

  5. POJ 3743 LL’s cake(圆+PSLG)

    题意是给你一块在原点半径为10的圆,然后告诉你一条直线在圆弧上的极角,相当于用这条直线把这个圆分成两半,然后一共是n条直线切圆,就好比切蛋糕,问你其中最大一块的面积是多少. 如果我们将圆弧转化成直线边 ...

  6. Thinkphp3.2 Redis缓存session

    Thinkphpsession缓存没有redis类库 Redis.class.php放在Library/Think/Session/Driver/下: <?php /** * +-------- ...

  7. [LeetCode] 52. N皇后 II

    题目链接 : https://leetcode-cn.com/problems/n-queens-ii/ 题目描述: n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间 ...

  8. SCAU_WeiShenWahle 之省赛任务

    每一项按顺序理解之后裸敲,每个代码最多15分钟,用模板题来测,超过15分钟算未理解 线段树 平衡树( Treap , sbt , spt ) #include <iostream> #in ...

  9. 多线程测试工具groboutils的使用

    一直使用junit做为服务测试框架,感觉不错.最近有人反映在高并发的情况下,存在服务调不到.无奈再次打开单元测试模拟高并发的 情况,却发现junit不支持并发测试      引入groboutils ...

  10. router4.0

    https://blog.csdn.net/sinat_17775997/article/details/69218382 React Router 4.0 实现路由守卫   https://www. ...