python 列表学习
一、创建一个列表(list)_使用逗号分隔不同的数据项,使用方括号括起来。
list = [1,2,3,4,5,6,7]
与字符串的索引一样,列表索引从 0 开始,列表可以截取、组合。
二、访问列表中的值
使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符
list1 = [‘physics’,’chemistry’,1997,2000] list2 = [1,2,3,4,5,,6,7] print(list1[0]) print(list2[1:5])
三、更新列表
你可以对列表的数据项进行修改或者是更新,你也可以使用append()方法来添加列表项
list = [‘physics’,’chemistry’,1997,2000] print(“Value available at index 2 :”) print(list[2]) list[2] = 2001 pirnt(“New value available at index 2 :”) print(list[2])
1.append() 追加单个元素到list的尾部,只接受一个参数,参数可以是任何数据类型, 被追加的元素在list 中保持着原结构类型。
*此元素如果是一个list,那么list作为一个整体追加。(注意append()和extend()的区别)
list1 = [‘a’,’b’] list1.append(‘c’) list1 输出 [ ‘a’ , ‘b’ , ‘c’ ]
2.extend() 将一个list中的每一个(整体)元素添加到另一个list中(连接两个list)
>>> list1 [ ‘a’ , ‘b’ , ‘c’ ] >>>list2 [ ‘d’ , ‘e’ ] >>> list1.extend(list2) >>> list1 [ ‘a’ , ‘b’ , ‘c’ , ‘d’ , ‘d’ , ‘e’ ]
3.insert() 将一个元素插入到list指定位置中,insert(1 , ‘g’)第一个是索引点,第二个是插 入的元素。
>>> list1 [ ‘a’ , ‘b’ , ‘c’ , ‘d’ ] >>>list1.insert( 1 ,’x’ ) >>>list1 [ ‘a’ , ‘x’ , ‘b’ , ‘c’ , ‘d’ ]
+ 号,将两个list相加,会返回一个新的list对象,注意区别:前三者函数可对list添加操作,但没有返回值,是直接改变原数据对象, 注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
>>>list1 [ ‘a’ , ‘x’ , ‘b’ , ‘c’ , ‘d’ ] >>>list2=[ ‘y’ , ‘z’ ] >>>list3=list1+list2 >>>list3 [ ‘a’ , ‘x’ , ‘b’ , ‘c’ , ‘d’ , ‘y’ , ‘z’ ]
四、删除list元素
可以使用 del 语句来删除list的元素
五、python列表脚本操作符
列表对+和*的操作符与字符串相似,+号用于组合列表,*号用于重复列表
|
Python 表达式 |
结果 |
描述 |
|
len([1, 2, 3]) |
3 |
长度 |
|
[1, 2, 3] + [4, 5, 6] |
[1, 2, 3, 4, 5, 6] |
组合 |
|
['Hi!'] * 4 |
['Hi!', 'Hi!', 'Hi!', 'Hi!'] |
重复 |
|
3 in [1, 2, 3] |
True |
元素是否存在于列表中 |
|
for x in [1, 2, 3]: print x, |
1 2 3 |
迭代 |
六、python列表截取
|
Python 表达式 |
结果 |
描述 |
|
L[2] |
'SPAM!' |
读取列表中第三个元素 |
|
L[-2] |
'Spam' |
读取列表中倒数第二个元素 |
|
L[1:] |
['Spam','SPAM!'] |
从第二个元素开始截取列表 |
七、python 列表操作的函数和方法
|
函数 |
作用 |
|
list.append(‘元素’) |
list尾部添加一个元素 |
|
list.extend([‘元素1’,’2’,’N’]) |
list尾部添加一个新的list序列 |
|
list.insert( K , 元素 ) |
list的k位置添加元素 |
|
list.clear() |
清空list序列内容 |
|
list.copy() |
复制list序列 |
|
list(seq) |
将seq元组转为列表 |
|
list.remove(k) |
将k从list中删除 |
|
del.list([k]) |
删除k位置的内容(空则清空整个list) |
|
list.pop(k) |
提取list中k位置的内容 |
|
list.count(k) |
查找k值在list中的次数 |
|
list.index(k,i,j) |
查找i - j之间第一个k元素的位置 |
|
list.reverse() |
顺序翻转list序列 |
|
list.sort() |
正序排列list内容 |
八、元祖1.元组的值,不能改变,是一个不可便的列表,可以通过访问下标和切片的方式查询,但是想要修改必须先转成list#tup1 = ('physics', 'chemistry', 1997, 2000) #定义元祖
#print tup1[1] #打印结果:chemistry #tup1[0] = 100 #这种修改方式是非法的 #tup2=list(tup1) #想要修改元祖,必须先将其转换成list才可以 #print tup2 #打印结果:['physics', 'chemistry', 1997, 2000] #tup2[2] = '1989' #print tup2 #打印结果:['physics', 'chemistry', 1989, 2000]
2.元祖只有count和index方法
names=('mike','mark','candice','laular','mark','msr')
print(names.count('mark')) #打印结果:2
print(names.index('msr')) #打印结果:
python 列表学习的更多相关文章
- !!对python列表学习整理列表及数组详细介绍
1.Python的数组分三种类型:(详细见 http://blog.sina.com.cn/s/blog_6b783cbd0100q2ba.html) (1) list 普通的链表,初始化后可以通过特 ...
- Python 列表学习笔录
列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类 ...
- python列表学习
#创建列表,通过[]来创建列表my_list=[] #创建了一个空列表#print(my_list,type(my_list)) #列表追存储的数据,我们称为元素#一个列表中可以存储多个元素,也可以在 ...
- python入门学习:3.操作列表
python入门学习:3.操作列表 关键点:列表 3.1 遍历整个列表3.2 创建数值列表3.3 使用列表3.4 元组 3.1 遍历整个列表 循环这种概念很重要,因为它是计算机自动完成重复工作的常 ...
- python入门学习:2.列表简介
python入门学习:2.列表简介 关键点:列表 2.1 列表是什么2.2 修改.添加和删除元素2.3 组织列表 2.1 列表是什么 列表,是由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- Day2 Python基础学习——字符串、列表、元组、字典、集合
Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...
- Python 学习笔记(八)Python列表(一)
列表基本操作 列表(list)定义 列表是Python中的一种对象类型,也是一种序列 对象类型:list 表示方法:[ ] python 列表中的元素可以是任何类型的对象 >>> ...
- Python语言学习:列表常用的方法
python 列表常用的方法 1.append( ):用于在列表末尾添加新的对象 list.appent(obj) #obj:添加到列表末尾的对象 #!/usr/bin/python aList = ...
- 60分钟Python快速学习(给发哥一个交代)
60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...
随机推荐
- cf123E Maze
传送门 分析 见ptx大爷的博客 代码 #include<iostream> #include<cstdio> #include<cstring> #include ...
- C++面试笔记--排序
这里我们开始复习排序的一些面试题. 首先我们来看一下各个排序方法的时间复杂度和稳定性的比较,见下面表格: 排序法 平均时间 最差情形 稳定度 额外空间 备注 冒泡 O(n2) O(n2) 稳定 ...
- JQuery UI Draggable插件使用说明文档
JQuery UI Draggable插件用来使选中的元素可以通过鼠标拖动.Draggable的元素受css: ui-draggable影响, 拖动过程中的css: ui-draggable-drag ...
- Java50道经典习题-程序47 输入数字打印星号
题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*. import java.util.Scanner; public class Prog47{ public static ...
- SpringMVC的理解
SpringMVC工作原理 SpringMvc是基于过滤器对servlet进行了封装的一个框架,我们使用的时候就是在web.xml文件中配置DispatcherServlet类:SpringMvc工作 ...
- The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).
刚才Insus.NET有尝试改一段代码,是让用户能动态变更网页背景图片的小功能.当Insus.NET去执行铵钮Click事件时,它却出现标题的错误.代码是这样的: 此代码,原本是没有什么问题的,但现在 ...
- Win10每次开机总是自动弹出MSN网址导航如何取消
Win10每次开机总是自动弹出MSN网址导航如何取消 近来有用户在升级Win10系统后,每次开机总是会自动弹出MSN中文网的网址导航.如果不想要开机打开MSN网址导航,那么应该怎么设置来取消呢?对此, ...
- CI框架源码学习笔记7——Utf8.php
愉快的清明节假期结束了,继续回到CI框架学习.这一节我们来看看Utf8.php文件,它主要是用来做utf8编码,废话不多说,上代码. class CI_Utf8 { /** * Class const ...
- asp.net core 自定视图主题 实现IViewLocationExpander接口
新建ThemeViewLocationExpander.cs 实现IViewLocationExpander接口 /// <summary> /// 自定视图主题 实现IViewLocat ...
- adminLte 解决菜单栏 bug
<ul class="sidebar-menu" data-widget="tree"> 功能菜单 点击 不隐藏第三级 子菜单....在 ad ...