iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python列表(list)的简单学习
  • 515
分享到

python列表(list)的简单学习

简单列表python 2023-01-30 23:01:05 515人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

列表是由一系列按特定顺序排列的元素组成, 是 python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表、字典(即嵌套)。 用([])来表示列表,并用逗号(

列表是由一系列按特定顺序排列的元素组成, 是 python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表、字典(即嵌套)。

用([])来表示列表,并用逗号(,)分隔各个元素。

学习列表之前,先学习一个函数,range()函数:

1 l = range(6)
2 print(l)
3 print(type(l))

输出结果:

range(0, 6)
<class 'range'>

只是这样是看不出来这个函数到底有什么用,又可以用来干什么的,那么如果在for循环中使用range()函数,又会发生什么呢?

 

1 for value in range(6):
2     print(value)

输出结果:

0
1
2
3
4
5

可以看出,,使用for循环输出了0-5,这说明range()函数可以产生0-5的整数列表。

range()函数的完整语法:

range(start, stop, [, step ])  # 这是什么意思?直接上示例:

1 for value in range(1, 6, 2):
2     print(value)

输出结果:

1
3
5

对比上个程序可以看出:

start表示开始计数的位置,默认是0,

stop表示截止位置,不包括这一位,

step表示间隔几个数,即步长。

再看下面的程序:

1 for value in range(1, -6, -2):
2     print(value)

输出结果:

1
-1
-3
-5

可以看出range()也可以产生负数,其中步长需为负的。

 

 下面来开始学习列表:

  (1)直接创建

1 list = [a, c, f, g, b, e , h, d]

  (2)使用range()函数

1 list = list(range(6))

  (3)使用for和range()函数

1 list = []
2 for i in range(6):
3     list.append(i)

  (4)列表解析

1 list = [value for value in range(6)]

  (1)增加元素

      在列表的末尾添加元素

1 list = [0, 1, 2, 3, 4, 5]
2 list.append(6)
3 # list1.append(0, 1)  #只能有一个参数
4 print(list)

输出结果:

[0, 1, 2, 3, 4, 5, 6]

      在指定位置添加元素

1 list = [0, 1, 2, 3, 4, 5]
2 list.insert(1, 1)
3 print(list)

输出结果:

[0, 1, 1, 2, 3, 4, 5]

  (2)删除元素

      删除指定位置的元素

1 list1 = [0, 1, 2, 3, 4, 5]
2 list2 = [0, 1, 2, 3, 4, 5]
3 del list1[1]
4 print(list1)
5 
6 pop_list = list2.pop(1)
7 print(pop_list)
8 print(list2)

输出结果:

[0, 2, 3, 4, 5]
1
[0, 2, 3, 4, 5]

由输出结果可以看出,del是语句删除,没有返回值,删除的元素就算是删除了,而使用list.pop()函数有返回值,返回被删除的值,可以将其赋值给一个变量,以便在下次使用时还可以用。

list.pop()函数可以不填参数,如果不填参数默认删除末尾的元素。

      根据值删除

1 list = [0, 1, 2, 1, 3, 4, 5]
2 data = list.remove(1)
3 print(data)
4 print(list)

输出结果:

None
[0, 2, 1, 3, 4, 5]

可以看出,remove()函数删除没有返回值,且如果列表中有重复值,只会删除第一个值。

  (3)修改列表元素

1 list = [0, 1, 2, 3, 4, 5]
2 list[0] = 1
3 print(list)
4 list[1:4] = [3, 2, 1]   # 要一一对应才行
5 print(list)
6 list[1:4] = [3, 2]
7 print(list)
8 list[1:4] = [3, 2, 1, 6]
9 print(list)

输出结果:

[1, 1, 2, 3, 4, 5]
[1, 3, 2, 1, 4, 5]
[1, 3, 2, 4, 5]
[1, 3, 2, 1, 6, 5]

修改列表元素直接通过下标进行修改,需要注意的是使用list[1:4] = [3, 2, 1]这种形式的时候一定要左右两边对应,左边是几个数,右边也是几个数,如果右边少了,那么少的那位将会被删除。如果右边多了,将会增加元素。

  (4)访问列表

1 list1 = [1, 2, 3, 4, 5, 6, 7]
2 print(list1[6])     # 列表的下标是从第0位开始的
3 print(list1[1:5])   # 注意:[1:5]表示取下标为1到下标为5-1的元素。
4 print(list1[2:])    # 输出第2位到最后一位
5 print(list1[:5])   # 输出第0位到第5-1位
6 print(list1[:])
7 print(list1[-1])   # -1表示最后一个元素,-2表示倒数第二个元素,以此类推。
8 print(list1[-2])
9 print(list1[-2:])    # 从末尾开始算起

输出结果:

7
[2, 3, 4, 5]
[3, 4, 5, 6, 7]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 6, 7]
7
6
[6, 7]

    按字母顺序排列

1 list = ['acb', 'cab', 'fbg', 'fag', 'b', 'e', 'h', 'd']
2 list2 = [1, 4, 7, 2, 5, 8]
3 list.sort()     # 按字母顺序排列
4 print(list)
5 
6 list.sort(reverse=True)     # 按字母倒序排列
7 print(list)
8 
9 # list2.sort(list2)     # 不能对数字类型的列表排序

输出结果:

['acb', 'b', 'cab', 'd', 'e', 'fag', 'fbg', 'h']
['h', 'fbg', 'fag', 'e', 'd', 'cab', 'b', 'acb']

sort()函数不能对数字类型的列表排序,由结果可以看出,当元素为字符串时,先按首字母参与排序,如果有两个元素首字母相同则比较这两个元素的第二个字母来进行排序。

 

    反转列表元素顺序

1 list = ['acb', 'cab', 'fbg', 'fag', 'b', 'e', 'h', 'd']
2 list.reverse()
3 print(list)
4 list.reverse()
5 print(list)

输出结果:

['d', 'h', 'e', 'b', 'fag', 'fbg', 'cab', 'acb']
['acb', 'cab', 'fbg', 'fag', 'b', 'e', 'h', 'd']

List.reverse() :反转列表元素的排列顺序,再一次使用该函数就变回原来的顺序。

 

    显示排序

1 list = ['acb', 'cab', 'fbg', 'fag', 'b', 'e', 'h', 'd']
2 print(sorted(list))
3 print(list)

输出结果:

['acb', 'b', 'cab', 'd', 'e', 'fag', 'fbg', 'h']
['acb', 'cab', 'fbg', 'fag', 'b', 'e', 'h', 'd']

可以看出sorted()函数只是在输出显示时对列表进行了排序,但是当输出原列表时,原列表并没有改变,这说明该函数的排序对列表的修改不是永久性的,而sort()函数,和reverse()函数对列表的排序修改是永久性的。

    for循环遍历列表

1 list = [1, 4, 7, 2, 5, 8]
2 for i in list:
3     print(i)

输出结果:

1
4
7
2
5
8

    while循环遍历列表

1 index = 0
2 while index < len(list):  # len(x)计算x的长度,在这里指的是列表长度,即元素个数
3     print(list[index])
4     index += 1

输出结果:

1
4
7
2
5
8

    计算列表的最大、最小值和总和

list = [1, 4, 7, 2, 5, 8]
print(min(list))
print(max(list))
print(sum(list))

输出结果:

1
8
27

    复制列表

 1 list = [1, 4, 7, 2, 5, 8]
 2 list2 = list[:]     # 该种方式复制时,原列表改变时不影响复制的列表
 3 list3 = list        # 该种方式复制时,当原列表改变时复制列表页改变
 4 
 5 print(list2)
 6 print(list3)
 7 
 8 list[2] = 9
 9 print("修改后的结果:")
10 print(list)
11 print(list2)    # list2没有改变
12 print(list3)    # 没有修改list3但是list3也改变了

输出结果:

[1, 4, 7, 2, 5, 8]
[1, 4, 7, 2, 5, 8]
修改后的结果:
[1, 4, 9, 2, 5, 8]
[1, 4, 7, 2, 5, 8]
[1, 4, 9, 2, 5, 8]

 

--结束END--

本文标题: python列表(list)的简单学习

本文链接: https://www.lsjlt.com/news/181362.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python列表(list)的简单学习
    列表是由一系列按特定顺序排列的元素组成, 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表、字典(即嵌套)。 用([])来表示列表,并用逗号(...
    99+
    2023-01-30
    简单 列表 python
  • python学习--列表
    一:定义 python的列表对象是python中最通用的序列。列表是一个任意类型的对象的位置相关的有序集合,它没有固定的大小。通过对偏移量进行赋值以及其他各种列表的方法进行调用,确实可以修改列表的大小。 二:列表的操作 1:求长度 >...
    99+
    2023-01-31
    列表 python
  • Python学习—列表练习
    1.【项目:大奖赛计分】   在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。  【项目扩展1(选做)】大奖赛编的计分程序,成绩在0-1...
    99+
    2023-01-31
    列表 Python
  • python学习之列表
    序列是python的最基本数据结构,序列的每个元素都分配一个数字,它的索引,第一个是0,第二个是1,依次类推;python的6个内建的序列分别是列表,元祖,字符串,unicode字符串,buffer对象和xrange对象;序列通用操作包含...
    99+
    2023-01-31
    列表 python
  • python学习列表图
    ...
    99+
    2023-01-31
    列表 python
  • python学习笔记之列表(list)与元组(tuple)详解
    前言 最近重新再看python的基础知识,感觉自己还是对于这些知识很陌生,需要用的时候还是需要翻书查阅,还是先注重基础吧——我要重新把python的教程阅读一遍,把以前自己忽略的部分学习,加强练习和记忆。 ...
    99+
    2022-06-04
    详解 学习笔记 列表
  • Python中列表、字典、元组数据结构的简单学习笔记
    列表 列表是Python中最具灵活性的有序集合对象类型。与字符串不同的是,列表可以包含任何类型的对象:数字、字符串甚至其他列表。列表是可变对象,它支持原地修改的操作。 Python的列表是: 任意对象...
    99+
    2022-06-04
    数据结构 字典 学习笔记
  • python学习-paramiko简单使
        paramiko是基于python实现的ssh2远程安全连接,支持认证及密钥方式。可以实现远程命令执行,文件传输、中间ssh代理等功能。安装:pip install paramiko或 easy_install paramikopa...
    99+
    2023-01-31
    简单 python paramiko
  • python学习--random和列表
    import random List = ['a','b','c','d']  First = raw_input("First :") for Item in List:         if First == Item:        ...
    99+
    2023-01-31
    列表 python random
  • python学习笔记---列表
    列表属于python序列中的一种,属于可变序列,支持插入、删除和替换操作。1、定义列表:2、列表中元素的操作:    获取索引的元素 l[index]:    删除列表中指定索引的元素 del(l[index]):    修改指定元素l[i...
    99+
    2023-01-31
    学习笔记 列表 python
  • Python 列表简单去重
    列表最简单的去重方式list1 = [10, 5, 1, 1, 3, 3, 3, 6, 6, 6] print(set(list1)) print(list((set(list1)))) #不排序 print(sorted(set(lis...
    99+
    2023-01-31
    简单 列表 Python
  • 简单学习Python time模块
    本文针对Python time模块进行分类学习,希望对大家的学习有所帮助。 一.壁挂钟时间 1.time() time模块的核心函数time(),它返回纪元开始的秒数,返回值为浮点数,具体精度依赖于平台。 ...
    99+
    2022-06-04
    模块 简单 Python
  • python学习-ansible简单使用
    一、介绍Ansible 一种集成 IT 系统的配置管理、应用部署、执行特定任务的开源平台,是 AnsibleWorks 公司名下的项目,该公司由 Cobbler 及 Func 的作者于 2012 年创建成立。Ansible 基于 Pytho...
    99+
    2023-01-31
    简单 python ansible
  • python学习之列表的运用
    目录创建列表常用函数常用方法列表推导式列表推导式的嵌套字符串的文本解析方法深浅复制浅复制深复制创建列表 list( ) # 创造列表 list(可迭代对象)  # 将可迭代对象创造成...
    99+
    2022-11-11
  • 一起来学习Python的列表
    目录列表更多的方法列表的嵌套总结列表更多的方法 index():返回指定数据所在位置的下标 (注意:如果查找的数据不存在则报错。)。count():统计指定数据在当前列表中出现的次数...
    99+
    2022-11-13
  • Python数据结构与算法之列表(链表,linked list)简单实现
    Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked list)——通常是由一系...
    99+
    2022-06-04
    数据结构 算法 链表
  • python基础学习3----列表
    一.字符格式化输出 占位符 %s s = string 字符串           %d d = digit 整数           %f f = float 浮点数 name = input("Name:") age = int...
    99+
    2023-01-30
    基础 列表 python
  • python-字典与列表学习
    #字典练习 def print_dict(): contect_file = 'contect_list.txt' f = file(contect_file) #读取 contect_dic = {} ...
    99+
    2023-01-31
    字典 列表 python
  • python基础学习_目录列表
    第一天: https://blog.51cto.com/xiong51/19622681.1 python版本 1.2 python安装 1.3 python解释器 1.4 字符集 1.5 运算符 1.6 条件判断 1.7 脚本示例第二天:...
    99+
    2023-01-31
    基础 目录 列表
  • 学习python:练习5.简单红包程序
    快过年了,最近不少群里都发红包,晚上突然想用这个红包做个练习,简单实现了一下,效果不错哦觉得稍微有点困难的地方是红包的算法,想了久了点,也不知道微信的算法是咋样的...效果:代码:# 简单的拼手气红包 import random from...
    99+
    2023-01-31
    红包 简单 程序
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作