一、列表

列表的概念:

  列表由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字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基础之列表、元组的更多相关文章

  1. python基础(五)列表,元组,集合

    列表 在python中是由数个有序的元素组成的数据结构,每一个元素对应一个index索引来隐式标注元素在列表中的位置.是python中最常用的一种数据类型.需要注意的是列表中可以有重复相同的数据. 列 ...

  2. Python基础数据类型-列表(list)和元组(tuple)和集合(set)

    Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...

  3. python基础之列表list元组tuple

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...

  4. 十二. Python基础(12)--生成器

    十二. Python基础(12)--生成器 1 ● 可迭代对象(iterable) An object capable of returning its members one at a time. ...

  5. python基础数据类型--列表(list)

    python基础数据类型--列表(list) 列表是我们在后面经常用到的数据类型之一,通过列表可以对数据类型进行增.删.改.查等操作 一列表的增.删.改.查 1增: 1.1增加到最后   append ...

  6. 二十二. Python基础(22)--继承

    二十二. Python基础(22)--继承 ● 知识框架   ● 继承关系中self的指向 当一个对象调用一个方法时,这个方法的self形参会指向这个对象 class A:     def get(s ...

  7. 二. Python基础(2)--语法

    二. Python基础(2)--语法 1.实现一个简单的登录系统 '''# 形式1 n = 1 while n < 4:     name = input("请输入姓名\n" ...

  8. python基础4 列表和元组

    一. 列表列表:python基础数据类型之一:其他语言中也有列表的概念,js 数组,可索引,可切片,可加步长li = ['hello', 100, True, [1, 2, 3], {'name':' ...

  9. python基础之列表、字典、元祖等 (二)

    一.作用域 if 1==1: name = 'weibinf' print name 下面的结论对吗? 外层变量,可以被内层变量使用 内层变量,无法被外层变量使用 二.三元运算 result = 值1 ...

  10. Python入门基础学习(列表/元组/字典/集合)

    Python基础学习笔记(二) 列表list---[ ](打了激素的数组,可以放入混合类型) list1 = [1,2,'请多指教',0.5] 公共的功能: len(list1) #/获取元素 lis ...

随机推荐

  1. JS的video在手机上有些手机能播放,而有些不能原因

    一,一开始我video是这样写的,直接给地址,然后有很多手机却不能播放,或者说卡在一开始的页面,是什么原因呢? <video id='video' > <source src='xx ...

  2. CMS(1)

    一周后,终于可以学习到可爱的渗透了哈哈哈.除了大哥给的CMS(其实可以算是只是在文件上传的时候了解一下),但是对于一个CMS完整的渗透思路,我还是不懂.首先感谢章老师给我的CMS源码哈哈哈,在我的日记 ...

  3. Shell05--函数应用

    目录 Shell05---函数应用 1. 函数基本概述 2. 函数基本使用 3. 函数参数传递 4. 函数状态返回 5. 函数场景示例 Shell05---函数应用 1. 函数基本概述 01. 什么是 ...

  4. 字符串函数-unquote()函数

    字符串函数顾名思意是用来处理字符串的函数.Sass 的字符串函数主要包括两个函数: unquote($string):删除字符串中的引号: quote($string):给字符串添加引号. 1.unq ...

  5. 使用jstack排查线程问题

    以一个例子来演示排查服务器cpu占用率过高的问题. 准备 将下面的代码文件上传到服务器上,然后使用javac编译,并使用java命令将程序跑起来. public class JStackCase { ...

  6. BZOJ3227 [sdoi2008]红黑树

    贪心什么的太神仙了( 老老实实dp于是就是沙茶题了 f[i][d][0/1]表示i个节点bh为d当前节点颜色白/黑[好好读题是真.. 转移一下然后就可以打表了( 由于我们发现这玩意很好卡有很好的性质( ...

  7. 如何使用Excel绘制甘特图

    摘自:http://www.mifengtd.cn/articles/how-to-create-a-gantt-chart-in-excel.html 再造<优秀的时间管理和项目管理工具> ...

  8. MySQL-触发案列

    1.更新案例 DELIMITER $$ USE `haochacang`$$ DROP TRIGGER /*!50032 IF EXISTS */ `customer_info_update`$$ C ...

  9. hdu1166:敌兵布阵(树状数组或线段树)

    题目描述: 一堆废话不用看...... 输入: 第一行一个整数T,表示有T组数据.每组数据第一行一个正整数N(N<=50000),表示敌人有N个工兵营地,接下来有N个正整数,第i个正整数ai代表 ...

  10. javascript中new关键字详解

    和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 ...