05 python 初学(列表)
列表,有点像c++里的数组
# _author: lily
# _date: 2018/12/16 mylist = ["xiaohong", "xiaogang", "xiaoming", "xiaoyun"]
print(mylist)
>>>['xiaohong', 'xiaogang', 'xiaoming', 'xiaoyun'] # 增删改查
# 查 切片
print(mylist[2]) # 取索引为2的元素
>>>xiaoming print(mylist[1:3]) # 取索引从1到2的元素
>>>['xiaogang', 'xiaoming'] print(mylist[1:]) # 取到最后
>>>['xiaogang', 'xiaoming', 'xiaoyun'] print(mylist[1:-1]) # 取到倒数第二个
>>>['xiaogang', 'xiaoming'] print(mylist[1::2]) # 从左到最后一个隔一个取一个,步长为2
>>>['xiaogang', 'xiaoyun'] print(mylist[3::-1]) # 从索引为3的元素开始,从右往左取
>>>['xiaoyun', 'xiaoming', 'xiaogang', 'xiaohong'] # 增 append:直接在列表最后添加; insert:可插入到某个位置。 都是作为一个元素加入
# mylist.append("lily")
# print(mylist)
# >>>['xiaohong', 'xiaogang', 'xiaoming', 'xiaoyun', 'lily'] # mylist.insert(1, "lily")
# print(mylist)
# >>>['xiaohong', 'lily', 'xiaogang', 'xiaoming', 'xiaoyun'] # 改
# mylist[1] = "lily"
# print(mylist)
# ['xiaohong', 'lily', 'xiaoming', 'xiaoyun'] # mylist[1:3] = ["pipi", "lily"]
# print(mylist)
# >>>['xiaohong', 'pipi', 'lily', 'xiaoyun'] # 删
# remove: 直接通过元素名称进行删除操作
# pop: 通过索引去删除元素,并且会返回该元素的内容
# del: 并不是列表独有的,而是通用的删除方法
# mylist.remove("xiaohong")
# print(mylist)
# >>>['xiaogang', 'xiaoming', 'xiaoyun'] # element = mylist.pop(0)
# print(mylist)
# print("element is: %s" %(element))
# >>>['xiaogang', 'xiaoming', 'xiaoyun']
# >>>element is: xiaohong # del mylist[0]
# print(mylist)
# >>>['xiaogang', 'xiaoming', 'xiaoyun'] # del mylist
# print(mylist)
#会报错,因为 del 直接将变量删除了,变量不存在,无法进行输出
增:有append 和 insert 两种方法。
append 是直接在列表后面添加; insert 传入两个参数:要添加到的具体位置和值
删: remove ,pop ,del 三种
remove:传入具体的值来进行删除
pop: 通过索引号来删除元素,并返回删除元素的具体内容。
不指定索引默认会删最后一个
del: 通用的删除方法
clear:mylist.clear() 清空
改: 直接将对应位置的元素进行重新赋值即可,可以修改列表内一段元素的值
查: 取对应索引位置的元素;
取列表内一段索引内的元素
隔一定步长取元素
倒序输出元素
# 对列表进行遍历
y = ['x', 'u', 'j', 'Z', 'Q']
for i in y:
print(i) >>>x
>>>u
>>>j
>>>Z
>>>Q
enumerate 函数:给列表内的每一个元素增加一个序号,输出来是一个元组
for i in enumerate(y):
print(i) 输出:
(, 'x')
(, 'u')
(, 'j')
(, 'Z')
(, 'Q') # 若 enumerate 后面传参数 1,即 enumerate(y, 1),则元素序号从 1 开始
当用两个变量去接收list里的两个值时,这两个值会分别赋给两个变量 (元组同理)
a, b = [1, 'lily']
print(a)
print(b)
>>> 1
>>> lily
# 因为 enumerate(y) 的每一个元素都是一个元组:(i, y[i]),因此用两# 个变量去接收它,元组内的每一个元素会赋值给对应的变量。
for i, v in enumerate(y):
print(i, v)
输出:
0 x
1 u
2 j
3 Z
4 Q
列表的嵌套:
列表嵌套是列表每一个元素可以是任何类型,字符串、数字、列表、元组都可以。
c++ 里面的数组每一个元素都必须是同类型的,这一点很不一样。
a = [[1, 2, 3],'lily' ,46 , ('pencil', 999)]
05 python 初学(列表)的更多相关文章
- python初学-列表
列表操作: 列表一般需要先调用方法后才能打印,不能直接打印调用的方法 因为列表可以修改 一般不会返回一个新列表 # 列表 # new_names = ['lzc','lzc2','lzc3'] # 下 ...
- 孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备
孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天本来应当继续学习Python的数据库操作,但根据过去我自 ...
- 孤荷凌寒自学python第六天 列表的嵌套与列表的主要方法
孤荷凌寒自学python第六天 列表的嵌套与列表的主要方法 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) (同步的语音笔记朗读:https://www.ximalaya.com/keji/1 ...
- Python初学笔记之字符串
一.字符串的定义 字符串是就一堆字符,可以使用""(双引号).''(单引号)来创建. 1 one_str = "定义字符串" 字符串内容中包含引号时,可以使用转 ...
- Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐
# Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐 from binarytree import build import random # https://www.cn ...
- Python 实现列表与二叉树相互转换并打印二叉树16-详细注释+完美对齐-OK
# Python 实现列表与二叉树相互转换并打印二叉树16-详细注释+完美对齐-OK from binarytree import build import random # https://www. ...
- Python list列表的排序
当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建函数sort() 这个应该是我们使用最多的也是最简单的排序函 ...
- python中列表和元组以及字符串的操作
python中列表是非常好用的.不过有一些使用小细节还需要注意一下. tag[32:-4] 从index为32到tag的倒数第4个字符. 如果索引为32的值在倒数第4个字符的右边,那么将输出为空.只要 ...
- python基础——列表生成式
python基础——列表生成式 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 举个例子,要生成list [1, 2, 3, 4 ...
随机推荐
- PHP常用函数归类【持续整理中......】
一.PHP基础语法 变量,常量 严格区分大小写,但内置结构或关键字无所谓(echo) 命名:不能以数字,空格,.来开头,但是可以有汉字,eg:$变量="aa"; ...
- js 中prototype运用(数组)
转自:http://www.cnblogs.com/chiname/articles/216517.html(侵删) /* * 方法:Array.removeAt(Index) * 功能 ...
- 微信小程序开发之初探
本文是以一个简单的小例子,来简要讲解微信小程序开发步骤,希望促进学习分享. 概念 微信小程序,简称小程序,缩写xcx,英文mini program.是一种不需要下载安装即可使用的应用,它实现了应用“触 ...
- 浅谈Kotlin(三):类
浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型.基本语法.代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 前言: 已经学习了前 ...
- Android studio 下的SDK Manager只显示已安装包的情况
原因是连接不上Google的更新服务器: 解决方法: 选择第三个Options: 修改Http Proxy Server: mirrors.neusoft.edu.cn Http Proxy Port ...
- Java synchronized解析
多线程三大特性: 可见性.原子性.有序性 synchronize的特性: 1.同一时刻只有一个线程访问临界资源 2.其它未获取到锁执行权的线程必须排队等待 3.保证共享资源的原子性.可见性和有序性 4 ...
- SAP 销售条件表增强栏位
有时遇到一个比较特殊的业务,比如公司间免费订单,既要让价格为0,不读取VK11里创建的价格, 又要让公司间的价格读取VK11,这实际上是有矛盾的,也就是说一个订单里面的两行,物料一样,客户一样,就会出 ...
- Team Services的打包管理
Team Services的打包管理 概述 Package Management (打包管理)是一种扩展,可以更容易地发现.安装和发布包. 它与Team Services中心如构建功能深度集成,这样打 ...
- SQL Server如何查找表名或列名中包含空格的表和列
最近发现一个数据库中的某个表有个字段名后面包含了一个空格,这个空格引起了一些小问题,一般出现这种情况,是因为创建对象时,使用双引号或双括号的时候,由于粗心或手误多了一个空格,如下简单案例所示: USE ...
- SSIS使用事务回滚
--创建表ttt Create table ttt ( ID INT PRIMARY KEY , NAME VARCHAR(50) ) --插入测试数据 INSERT INTO TTT VALUES ...