列表,元祖,range
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
# li = [123, '老男孩', True, [1, 2, 3], {'name': 'alex'}, (1, 2, 3)]
# 列表称之为容器型数据类型。
# l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
# 按照索引取值
# print(l1[0])
# print(l1[1], type(l1[1]))
# 按照切片取值,可取步长 顾头不顾尾
# print(l1[:3])
# print(l1[2:])
# print(l1[::2])
增删改查:
增:
li = [1,'a','b',2,3,'a']
# li.insert(0,55) (索引,元素) #按照索引去增加,插入
# print(li) [55, 1, 'a', 'b', 2, 3, 'a']
# li.append('aaa') #增加到最后,追加 [1,'a','b',2,3,'a','aaa']
# li.append([1,2,3]) #增加到最后,追加 [1,'a','b',2,3,'a','aaa',[1,2,3]]
# print(li)
# li.extend(['q,a,w']) #迭代的去追加 [1, 'a', 'b', 2, 3, 'a', 'q', ',', 'a', ',', 'w']
# li.extend(['q,a,w','aaa']) [1, 'a', 'b', 2, 3, 'a', 'q,a,w', 'aaa']
# li.extend('a')
# li.extend('abc')
# li.extend('a,b,c')
# print(li) 列表是可迭代对象
字符串转化为列表:
li = []
li.extend('abc')
print(li) ['a', 'b', 'c']
删:
li = [1,'a','b',2,3,'c']
# l1 = li.pop(1) #按照位置去删除,有返回值
# print(l1) 'a'
# l1 = li.pop() #默认删除最后一位,有返回值
# print(l1) 'c' # li.remove('a') #按照元素去删除,如果有相同元素,只删除第一个
# print(li) [1,'b',2,3,'c'] # li.clear() #清空列表
# print(li) [] 空列表
del:
1,在内存级别删除列表
del l1
print(l1) name 'l1' is not defined
2,按照索引删除。
del l1[2]
print(l1) [1, 'a', 2, 3, 'c']
3,切片删除,可加步长。
del l1[:-1]
print(l1) ['c']
改:
# li = ["windows", "Ubuntu", "CenOS", "Red Hat"]
# li[1] = "MacOS" #按照索引修改
# print(li) ['windows', 'MacOS', 'CenOS', 'Red Hat']
# li[0:2] = "MacOS" #按照切片修改 删除旧的,添加新的(迭代添加)
# print(li) ['M', 'a', 'c', 'O', 'S', 'CenOS', 'Red Hat']
# li[::1] = ["周杰伦","周润发","麻花藤"] #切片,可加步长 步长为1,等于列表重新赋值
# print(li) ['周杰伦', '周润发', '麻花藤']
# li[::2] = ["周杰伦","周润发","麻花藤"] 如果步长不是1,元素个数必须要匹配,不然会报错
# print(li) attempt to assign sequence of size 3 to extended slice of size 2
# li[::2] = ["周杰伦","周润发"]
# print(li) ['周杰伦', 'Ubuntu', '周润发', 'Red Hat']
查:
# 索引、切片、for循环
常用操作:
#len 列表长度或列表里面有多少个元素
# print(len(l1))
#count 某元素在列表里出现的次数
# print(l1.count('taibai'))
#index 通过元素找索引
# print(l1.index('alex'))
# l2 = [1, 3, 5, 9, 7, 6, 2, 4]
#sort 从小到大,正序排序
# l2.sort()
# print(l2) [1, 2, 3, 4, 5, 6, 7, 9]
li = ["1", "5","112","11","111","21"] # 字符串排序,按照位数排
# li.sort()
# print(li) ['1', '11', '111', '112', '21', '5']
#sort 从大到小,倒序排序
# l2.sort(reverse=True)
# print(l2) [9, 7, 6, 5, 4, 3, 2, 1]
#翻转 reverse
# l2.reverse()
# print(l2) [4, 2, 6, 7, 9, 5, 3, 1]
元组
# 只读列表,不能增删改 只能查询
# tu = (11, 22, 33, 44, 55)
# 基本操作: 索引,切片,步长,for循环,index,len, count
# print(tu[0])
# print(tu[:3:2])
# for i in tu:
# print(i)
# index len count
# 可以del
del tu 内存级别删除
print(tu) name 'tu' is not defined
# tu = ("哈哈", ) # 如果只有一个元素. 必须加一个逗号
# print(tu,type(tu)) ('哈哈',) <class 'tuple'>
# tu = ("哈哈" )
# print(tu,type(tu)) ('哈哈') <class 'str'>
range:
range(start,end,step) 顾头不顾尾,可切片,可加步长
for i in range(100) 0到99
for i in range(0,100) 0到99
for i in range(0,100,2) 0到98的偶数
列表的枚举:
enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

li = ['alex','银角','女神','egon','太白']
for i in enumerate(li):
print(i)
执行结果: 元祖类型
(0, 'alex')
(1, '银角')
(2, '女神')
(3, 'egon')
(4, '太白')
for index,name in enumerate(li,1):
print(index,name)
执行结果: 解构 可以设定索引的起始位置
1 alex
2 银角
3 女神
4 egon
5 太白
for index, name in enumerate(li): # 起始位置默认是0,可更改
print(index, name)
执行结果: 解构
0 alex
1 银角
2 女神
3 egon
4 太白
列表,元祖,range的更多相关文章
- 列表 元祖 range
1.列表 list 存放一些数据的容器 比如 衣柜 书包 作用:存储一些数据,数据量比较大 可以下标 可以切片 可以步长 和字符串的完全一样 lst = [1,2,3] print(lst) #[1, ...
- Python学习day4 数据类型Ⅱ(列表,元祖)
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...
- Python学习笔记---切片 列表 元祖 字典 集合
列表[1,2,3,2]#[] 元祖(1,2,3,2)#() 字典{1:2,3:2}#{} 集合{1,2,3,2}#{} 1,集合与列表的区别,集合里不能有重复元素 2.字典与集合的区别,都是用花括号表 ...
- python-基础-字符串-列表-元祖-字典2
接上:http://www.cnblogs.com/liu-wang/p/8973273.html 3 元组 4 字典 4.1 字典的介绍 <2>软件开发中的字典 变量info为字典类型: ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- python 列表 元祖 集合
#####################概念#######################1,什么是列表: 列表由[]表示,里面每一项元素用逗号隔开,里面什么都可以装.能装对象的对象. 列表可以装大 ...
- python入门(五):切片列表元祖字典
1.切片 针对序列,使用切片可以获得我们想要的内容 序列:字符串.列表.元祖 特点:可以使用坐标获取某一个值.坐标是从0开始算 >>> s="0123456789" ...
- Python入门 [输出,注释,列表,元祖,集合,字典,if,while,for]
print("Hello Python") #输出 ''' 多行注释 用 三个引号 ''' a=1 #赋值 变量首字母只能书字母下划线 第二个字符数字,字母,下划线 声明一个列表 ...
随机推荐
- Mac苹果电脑单片机开发
1.安装虚拟机 可以阅读往期文章:Mac苹果电脑安装虚拟机 2.在虚拟机上安装CH340驱动,keil4,PZ-ISP, 下载 CH340驱动安装 下载keil4破解及汉化 下载普中科技烧录软件
- HADOOP单机版配置
1.需要软件 jdk hadoop 将jdk和hadoop解压到自己想要存放的路径 这里我解压到/usr/目录下 sudo tar -zxvf java1.8.tar.gz -C /usr/ hado ...
- 使用ThreadLocal
使用ThreadLocal 阅读: 135212 多线程是Java实现多任务的基础,Thread对象代表一个线程,我们可以在代码中调用Thread.currentThread()获取当前线程.例如,打 ...
- java集合并发操作异常解决方法:CopyOnWriteArrayList
一.我们知道ArrayList是线程不安全的,请编写一个不安全的案例并给出解决方案 HashSet与ArrayList一致 HashMap HashSet底层是一个HashMap,存储的值放在Hash ...
- Spark学习进度-Transformation算子
Transformation算子 intersection 交集 /* 交集 */ @Test def intersection(): Unit ={ val rdd1=sc.parallelize( ...
- [开源软件] 腾讯云Linux服务器一键安装LAMP/LNMP/LANMP环境 转
本帖最后由 我本戏子 于 2015-8-13 22:00 编辑OneinStack是非常优秀的一键PHP/JAVA安装脚本,提供以下环境:lnmp(Linux + Nginx+ MySQL+ PHP) ...
- Lesson_strange_words4
mount on 安装 arc 弧 actuator 马达,致动器:调节器 roughly 大致,大约 radially 径向,放射状 stepper 步进机 motor 电机,发动机 sequent ...
- 【剑指 Offer】10-II.青蛙跳台阶问题
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶.求该青蛙跳上一个 n 级的台阶总共有多少种跳法. 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008, ...
- HBASE Shell基本命令
定义 HBASE是一种分布式.可扩展.支持海量数据存储的NoSQL数据库. HBASE数据模型 逻辑上,HBASE的数据模型同关系型数据库类似,数据存储到一张表中,有行有列,但是从HBASE的底层物理 ...
- python面向对象基础-属性/方法