关于python列表的一些基础知识。
因学校实验室要求,自学了python,一开始看书觉得太简单了,也没有多动手去尝试,直到看完了前八章突然想动手试试的时候,人傻了,深刻体会到了好记性不如烂笔头的道理,故整理一些python列表的操作。
PS:我看的书是Eric Mathes著的《Python编程 从入门到实践》,尽管我想吐槽是让我从入门到放弃,但还是要学下去啊。
1.1列表简介
列表是什么?在python中,用方括号[]表示列表,并用逗号来分隔其中的元素,列表是一个有序的集合,第一个列表元素的索引是0而非1。
1.2修改、添加和删除元素
1.2.1修改元素
例如现有一个列表为letter = ['a', 'b',] ,而如果我想要修改其中的元素可直接利用索引访问并且修改例如:letter[0] = ‘c’,这之后的列表变为letter = [‘c’, 'b']
1.2.2添加元素
1.2.2.1在列表末尾添加元素
可直接使用方法append()来将元素添加到列表的末尾,方法append()让动态地创建列表易如反掌【不禁让我想起了学习C语言可变数组时的痛】
letter = []
letter.append('a')
letter.append('c')
print(letter)
可以得到输出:['a', 'c']
1.2.2.2在列表中间插入元素
可使用方法insert()在列表的任何位置添加新元素。例如在上面的代码中可以加上:letter.insert(1,'b'),即可得到输出:['a', 'b', 'c']
1.2.3删除元素
1.2.3.1使用del删除元素,条件是要知道该元素的索引,例如上面的代码可以删除‘a’,则是:del letter[0]
1.2.3.2使用pop()删除末尾元素,它可以删除列表末尾的元素,并让你能够接着使用它。术语弹出(pop)源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶的元素。
letter = ['a', 'b', 'c']
print(letter)
l = letter.pop()
print(l)
可以得到输出:
['a', 'b', 'c']
c
1.2.3.3使用pop()删除任何位置处的元素,使用方法为pop(你所想要删除的元素的索引),即弹出的元素不再是最后一个,而是你给的索引对应的元素。
1.2.3.4根据元素的值删除元素,可使用方法remove()
letter = ['a', 'b', 'c']
print(letter)
letter.remove('a')
print(letter)
可得到输出:
['a', 'b', 'c']
['b', 'c']
注意:方法remove()只删除第一个指定的值,例如一个列表中同一个值出现多次时则需要使用循环来判断是否删除完了该列表中的所有这个值。
1.2.4组织列表
1.2.4.1使用方法sort()对列表进行永久性排序,如果是排序字母的话,则是遵从a-z的顺序进行排序,如果在sort()的括号中添加reverse=True,即sort(reverse=True)则可以按与字母顺序相反的顺序排列列表元素。
letter = ['a', 'z', 'c', 'f']
letter.sort(reverse=True)
print(letter)
可得到输出:['z', 'f', 'c', 'a']
1.2.4.2使用sorted()对列表进行临时性排序,同样的添加reverse=True,即sorted(reverse=True)也可按相反顺序排序。
1.2.4.3倒着打印列表可使用reverse(),永久性地修改了列表元素地排列顺序
letter = ['a', 'z', 'c', 'f']
letter.reverse()
print(letter)
可得到输出:['f', 'c', 'z', 'a']
1.2.4.4确定列表的长度可以使用len(列表名称)
暂且先写那么多,图书馆太冷了,溜了溜了。
关于python列表的一些基础知识。的更多相关文章
- python快速改造:基础知识
改造"Hacking"并不同于破坏"cracking" python快速改造:基础知识 一行就是一行,不管多少,不用加分号 交互式python解释器可以当作计算 ...
- 深入理解python(一)python语法总结:基础知识和对python中对象的理解
用python也用了两年了,趁这次疫情想好好整理下. 大概想法是先对python一些知识点进行总结,之后就是根据python内核源码来对python的实现方式进行学习,不会阅读整个源码,,,但是应该会 ...
- Python学习第二节——基础知识
# !/usr/bin/edv python 脚本语言的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它.# -*- coding:UTF-8 -*- 标明编码注释 ...
- python - 接口自动化 - 接口测试基础知识
# -*- coding:utf-8 -*- '''@project: jiaxy@author: Jimmy@file: study_接口测试基础知识一.py@ide: PyCharm Commun ...
- Python学习之并发基础知识
8 并发编程 8.1 基础知识 8.1.1 操作系统的定义 操作系统是存在于硬件与软件之间,管理.协调.调度软件与硬件的交互. 资源管理解决物理资源数量不足和合理分配资源这两个问题, 通俗来说,操作系 ...
- (一)Python 学习第一天--基础知识,列表
1. .pyc文件 .pyc文件:在python3中,当模块运行时会自动生成在_pycache_文件夹中,其中c为compiled的缩写. Python是一门现编译后解释的语言,在运行时首先寻找.py ...
- [Python笔记]第一篇:基础知识
本篇主要内容有:什么是python.如何安装python.py解释器解释过程.字符集转换知识.传参.流程控制 初识Python 一.什么是Python Python是一种面向对象.解释型计算机程序设计 ...
- 【Python升级录】--基础知识
创建角色成功! 正在载入python........ [python介绍] python是一门动态解释性的强类型定义语言. python的创始人为吉多·范罗苏姆(Guido van Rossum).1 ...
- Python记录1:基础知识常识
今日内容: 一,Python的数据类型 Python一共有以下几种常见的数据类型:int(整形) float(浮点型) str(字符串) list(列表) tuple元组 dict(字典) ...
随机推荐
- 【u233】单词化简
Time Limit: 1 second Memory Limit: 64 MB [问题描述] 最近情报人员得到了一些经过加密的文章,每个单词都很长.破译人员想到先把单词化简一下,方法是把每个单词尽量 ...
- P1062 差K素数对
题目描述 给你两个数 n 和 k ,请求出所有小于等于 n 的相差为 k 的素数对. 输入格式 两个正整数n,k.1<=k<=n<=10000. 输出格式 所有小于等于n的素数对.每 ...
- samba 部署与实验
一.本地用户登录 1.本地用户验证(Samba服务器默认的安全级别,用户在访问共享资源之前必须提供用户名和密码进行验证) 拓展:tdbsam:该方式是使用一个数据库文件来验证.数据库文件叫passdb ...
- ERROR StatusLogger Log4j2 could not find a logging implementation.
今天在学习structs2 2.5.5的版本的时候碰到2个问题.第一个网上下的包里面差log4j-core这个包. 虽然程序可以运行,但控制台会报这个错误. ERROR StatusLogger L ...
- jQuery无new创建对象原理
// jQuery 无new 创建对象套路 (function(g,undefined){ var foo = function(){ return new foo.fn.init(); }; foo ...
- HBase 分裂(split)
1. 为什么split 最初一个Table 只有一个region(因此只能存放在一个region server上).随着数据的不断写入,HRegion越来越大,当到达一定程度后分裂为两个,通过负载均衡 ...
- background新增属性
今天解除了几个曾经没有用到的属性,所以想总结并且复习一下. background-origin属性:有三个属性值,分别是border-box,padding-box,content-box.看到bor ...
- 利用docker容器运行.net core webapi
利用docker容器运行.net core webapi :first-child { margin-top: 0 !important; } > :last-child { margin-bo ...
- 天猫SSM项目学习记录(一)----第一个相对完整的SSM项目
来源: http://how2j.cn/k/tmall_ssm/tmall_ssm-1516/1516.html?p=78908 目的:记录一个相对完整的SSM项目模板 1.工具:idea2018商 ...
- Unity3D小游戏开发之两个我踩过的坑
最近在开发一个植物大战僵尸小游戏,今天写了一早上的代码,踩了两个坑,这两个坑的位置分别位于触发器和数据转换,写这篇博文以此来让其他程序员不要再去踩这两个坑. 1.我在做简易僵尸模型的时候,这个僵尸模型 ...