二、python基础之列表、元组
一、列表
列表的概念:
列表由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0-9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间没有任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters、digits或names)是个不错的主意。
在python中,用方括号[]来表示,并用逗号来分隔其中的元素。下面介绍一下列表的基本用法
先创建以下两个列表:
list1 = [1,2,4,7,5,6]
list2 = [9,3,22,44,55]
1.列表的添加
list1.append(999) #方式一:向列表的结尾添加元素
list1.insert[0,999] #方式二:插入一个元素,插入特定的位置
list1.extend(list2) #方式三:扩展列表,将list2添加到list1的最后
2.列表的复制
list2 = list1.copy()
3.列表的删减操作
list1.remove(2) #根据值删除,删除元素2,若存在相同元素,则删除靠前的.remove()删除元素后也可以接着使用
list1.pop() #默认删除最后一个元素,可指定位置删除元素。pop()删除元素后可以接着使用
list1.pop(0) #删除0位元素
del list1[0] #删除列表的指定元素或者删除整个列表
del list1
6 #如果要从列表中删除一个元素再也不使用,使用del();如果删除一个元素后还需要使用,则使用pop()。
4.获取列表的特定元素
l = list1[2] #根据下标获取列表中的元素
5.列表的排序
5.1.使用sort()方法对列表进行永久排序
5.1.1.正序排序
list2 = [9, 3, 22, 44, 55]
list2.sort()
print(list2)
运行后输出结果:
[3, 9, 22, 44, 55]
5.1.2.倒序排序
list2 = [9, 3, 22, 44, 55]
list2.sort(reverse=True)
print(list2)
运行后输出结果:
[55, 44, 22, 9, 3]
5.2.使用sorted()对列表进行临时排序
list2 = [9, 3, 22, 44, 55]
print("原来的列表是:")
print(list2) print("使用sorted排序后:")
print(sorted(list2)) print("再次输出list2:")
print(list2)
运行后输出结果:
原来的列表是:
[9, 3, 22, 44, 55]
使用sorted排序后:
[3, 9, 22, 44, 55]
再次输出list2:
[9, 3, 22, 44, 55]
5.3.使用reverse()倒着打印列表
reverse()方法并不是指按元素的顺序进行倒序排序,而是将列表中的元素进行反转
list2 = [9, 3, 22, 44, 55]
print("原来的列表是:")
print(list2) print("使用reverse反转后:")
list2.reverse()
print(list2)
运行后输出结果:
原来的列表是:
[9, 3, 22, 44, 55]
使用reverse反转后:
[55, 44, 22, 3, 9]
6、确定列表的长度
使用len()方法
list2 = [9, 3, 22, 44, 55]
print(len(list2))
运行后输出结果:
二、操作列表
1、遍历列表
使用for循环对列表进行遍历
list2 = [9, 3, 22, 44, 55]
for num in list2:
print(num)
运行后输出结果:
9
3
22
44
55
2.创建数字列表
使用range()可以生成一系列的数字
for num in range(1, 6):
print(num)
运行后输出结果:
1
2
3
4
5
如果要生成数字列表可以使用list()将range()的结果直接转换为列表
numbers = list(range(1, 6))
print(numbers)
运行后得到结果:
[1, 2, 3, 4, 5]
3.列表的切片
如果不使用切片来进行复制
list2 = [9, 3, 22, 44, 55]
list1 = list2
list2.append(100)
list1.append(101)
print(list2)
print(list1)
运行后输出结果:
[9, 3, 22, 44, 55, 100, 101]
[9, 3, 22, 44, 55, 100, 101]
#由于这种方式是将list2赋值给list1,因此这两个变量都指向同一个列表
使用切片进行复制
list2 = [9, 3, 22, 44, 55]
list1 = list2[:]
list2.append(100)
list1.append(101)
print(list2)
print(list1)
运行后输出结果:
[9, 3, 22, 44, 55, 100]
[9, 3, 22, 44, 55, 101]
#在提取切片的时候创建了一个列表副本,这个过程产生了两个列表
三、元组
元组的概念
列表非常适合用于存储在程序运行期间可能变化的数据集。列表是可以修改的,这对处理网站的用户列表或游戏中的角色列表至关重要。然而,有时候你需要创建一系列不可修改的元素,元组可以满足这种需求。python将不能修改的值称为不可变的,而不可边的列表被称为元组
元组使用圆括号进行标识。
1.修改元组变量
虽然不能修改元组的元素,但可以给存储元组的变量重新赋值
numbers = (1, 2, 3, 4, 5)
print(numbers) numbers = (100, 200)
print(numbers)
运行后得到结果:
(1, 2, 3, 4, 5)
(100, 200)
二、python基础之列表、元组的更多相关文章
- python基础(五)列表,元组,集合
列表 在python中是由数个有序的元素组成的数据结构,每一个元素对应一个index索引来隐式标注元素在列表中的位置.是python中最常用的一种数据类型.需要注意的是列表中可以有重复相同的数据. 列 ...
- Python基础数据类型-列表(list)和元组(tuple)和集合(set)
Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- 十二. Python基础(12)--生成器
十二. Python基础(12)--生成器 1 ● 可迭代对象(iterable) An object capable of returning its members one at a time. ...
- python基础数据类型--列表(list)
python基础数据类型--列表(list) 列表是我们在后面经常用到的数据类型之一,通过列表可以对数据类型进行增.删.改.查等操作 一列表的增.删.改.查 1增: 1.1增加到最后 append ...
- 二十二. Python基础(22)--继承
二十二. Python基础(22)--继承 ● 知识框架 ● 继承关系中self的指向 当一个对象调用一个方法时,这个方法的self形参会指向这个对象 class A: def get(s ...
- 二. Python基础(2)--语法
二. Python基础(2)--语法 1.实现一个简单的登录系统 '''# 形式1 n = 1 while n < 4: name = input("请输入姓名\n" ...
- python基础4 列表和元组
一. 列表列表:python基础数据类型之一:其他语言中也有列表的概念,js 数组,可索引,可切片,可加步长li = ['hello', 100, True, [1, 2, 3], {'name':' ...
- python基础之列表、字典、元祖等 (二)
一.作用域 if 1==1: name = 'weibinf' print name 下面的结论对吗? 外层变量,可以被内层变量使用 内层变量,无法被外层变量使用 二.三元运算 result = 值1 ...
- Python入门基础学习(列表/元组/字典/集合)
Python基础学习笔记(二) 列表list---[ ](打了激素的数组,可以放入混合类型) list1 = [1,2,'请多指教',0.5] 公共的功能: len(list1) #/获取元素 lis ...
随机推荐
- mpvue中的 钩子函数
经过多次脱坑实验总结如下, 1,页面的A第一次加载会调用mounted钩子函数,onshow, 2,当从a->b,b再返回到a时,a不会触发mounted,而是触发onshow, 3,如果a中存 ...
- HttpGet请求传递数组(集合)
在HttpGet请求是传递数组(集合)的方法: 1.使用Ajax方法传递 eg: ajax.({ url:/test, data:["], type:"get" }); ...
- tensorflow的阶、形状、数据类型
张量的阶.形状.数据类型 TensorFlow用张量这种数据结构来表示所有的数据.你可以把一个张量想象成一个n维的数组或列表.一个张量有一个静态类型和动态类型的维数.张量可以在图中的节点之间流通. 阶 ...
- BZOJ-2337 XOR和路径(HNOI2011)概率DP+概率的线性叠加
题意:给出n个点和m条边,每条边有权值wi,从1出发,每次等概率选一条出边走,直到终点n停止,得到的值是路径所有边的异或和.问异或和期望. 解法:这道题非常有意思!首先比较直观的想法就是dp[x]代表 ...
- git兼容svn与hg功能
本地.git库 远程:push 提交以后push才可以到远程库
- Hadoop中的排序和连接
MapReduce的全排序 主要是为了保证分区排序,即第一个分区的最后一个Key值小于第二个分区的第一个Key值 与普通的排序仅仅多一个自定义分区类MyPartitioner见自己所写的实验 (设置一 ...
- 常用生物信息 ID 及转换方法
众多不同的数据库所采用的对 Gene 和 Protein 编号的 ID 也是不同的, 所以在使用不同数据库数据的时候需要进行 ID 转换. 常用数据库 ID ID 示例 ID 来源 ENSG00000 ...
- 【锁】synchronized的实现(偏向锁、轻量级锁、重量级锁)
synchronized的三种应用方式 一. 修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁. 二. 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁. 三. ...
- tab切换中的滚动条下拉分页带来的问题
相信做过tab切换中滚动条下拉分页的童鞋都知道,我们在用scroll方法来做滚动条下拉分页的时候,都是有bug,切换中间的内容会互相影响,为了解决这个问题,我总结了2种方法: 1.方法一: <! ...
- 20175213 2018-2019-2 《Java程序设计》第11周学习总结
教材学习内容总结 URL类是java.net包中的一个重要的类,URL的实例封装着一个统一资源定位符(Uniform Resource Locator),使用URL创建对象的应用程序称作客户端程序 U ...