python基础03序列
sequence 序列
sequence序列是一组有顺序的元素的集合
(严格的说,是对象的集合,但鉴于没有引入对象的概念,暂时说元素)
序列可以包含一个或多个元素,也可以没有任何元素
我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后的其他对象。
序列有两种:tuple(定值表:也叫元组);和list(列表)
s1 = (2,1.3,'love',5.6,9,False) #是一个tuple
s2 = [True,5,'smile'] #是一个list
print (s1,type(s1))
([True, 5, 'smile'], <type 'tuple'>)
print (s2,type(s2))
([True, 5, 'smile'], <type 'list'>)
tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。
一个序列作为另一个序列的元素
s3 = [1,[3,4,5]]
空序列
s4 = []
元素的引用
序列元素的下标从0开始:
print (s1[01])
1.3
print (s2[2])
smile
print (s1[1][2])
v
由于list的元素可更变,你可以对list进行赋值
s2[1] = 3.0
print (s2)
以上输出
3.0
如果你对tuple做这样的操作,会得到错误提示。
所以,可以看到,序列的引用通过s[int]实现,int为下标。
其他引用方式(切片)
范围引用:基本样式[下限:上限:步长]
print (s1[:5]) #从开始到下标4(下标5的元素不在内)
(2, 1.3, 'love', 5.6, 9)
print (s1[2:]) #从下标2到最后
('love', 5.6, 9, 12, False)
print (s1[0:5:2]) #从下标0到下标4(下标5不包括),每个2取元素()
(2, 'love', 9)
print (s1[2:0:-1]) #从下标2到下标1
('love', 1.3)
从上可以看出,在范围引用的时候,如果写明上限,那么这个上限本身不包括在内。
尾部元素引用
print (s1[-1]) #序列最后一个元素
print (s1[-3]) #序列倒数第三个元素
字符串是元组
字符串是特殊的元组,因此可以执行元组的相关操作。
str = 'abcdef'
print (str(2:4))
'cd'
总结
tuple元素不可变,list元素可变
序列的引用 s[2],s[1:8:2]
字符串是一种tuple
python基础03序列的更多相关文章
- Python基础03 序列
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! sequence 序列 sequence(序列)是一组有顺序的元素的集合 (严格的 ...
- Python 基础03 序列
sequence 序列 sequence(序列) 是一组有顺序的元素的集合 (严格的说,是对象的集合,但鉴于我们还没有引入"对象" 概念,暂时说元素) 序列可以包含一个或多个元素, ...
- Python基础:序列(列表、元组)
一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...
- Python基础:序列(字符串)
一.概述 字符串 类似于C中的字符数组(功能上更像C++中的string),它是由一个个 字符 组成的序列.与C/C++不同的是,Python中没有 字符 这个类型,而是用 长度为1的字符串 来表示字 ...
- python基础之序列类型的方法——字符串方法
python基础之序列类型的方法--字符串方法 Hello大家好,我是python学习者小杨同学,经过一段时间的沉淀(其实是偷懒不想更新),我终于想起了自己的博客账号,所以这次带来的是序列方法的后半部 ...
- Python基础:序列
一.概述 序列类型(Sequence Types)类似于C中的数组,它是包含一组成员的连续列表,这些成员紧邻排列,并且可以通过序号(下标偏移量)访问其中的一个或多个成员.序列类型的示意图如下所示: P ...
- Python基础__Python序列基本类型及其操作(1)
本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合.这里的对象可以是数字.字符串等.根据功能的不同将序列分为字符串.列表.元组,本文将以下这几种对象做一些介绍. 一. 字 ...
- python基础之 序列 pickle&json
内容梗概: 1. 什么是序列化 2. pickle(重点) 3. shelve 4. json(重点) 5. configparser模块 1. 什么是序列化 在我们存储数据或者网络传输数据的时候. ...
- Python数据类型-03.序列-列表和元组
本文主要记录关于Python序列中列表和元组的定义特点和常用方法 1.序列(sequence) 1.1.序列的定义 序列是一组有顺序的元素的集合(其实是是对象的集合,后期会引入“对象”这个概念)序列包 ...
随机推荐
- JS学习:第一周——NO.4继承
1.[关于call] 作用:是用来改变this指向的,有两种参数 第一种:第一个参数,用来改变this指向 第二种:给call前面的函数传参,从第二个参数开始,给call前面的函数从左到右一个个的传参 ...
- js中Window 对象及其的方法
window.location 对象 window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面.window.location 对象在编写时可不使用 wind ...
- bzoj2928: [Poi1999]飞弹
惨啊…… 被卡常是一种什么感受&…… 很明显的分治. 我们首先可以找到所有点中的最低点,然后对所有点进行一次极角排序,选取一个点使得他各侧飞弹和地堡一样多,并对两侧继续进行分治. 很容易证明这 ...
- [mark] Linux下如何批量删除空文件
可以使用 xargs 命令来批量处理,代码如下: $ find . -name '*' -type f -size 0c | xargs rm -f
- pip安装报错:is not a supported wheel on this platform
可能的原因1:安装的不是对应python版本的库,下载的库名中cp27代表python2.7,其它同理. 可能的原因2:这个是我遇到的情况(下载的是对应版本的库,然后仍然提示不支持当前平台) 我下载到 ...
- 微软往年校招招面试题AC全解。
因为4月初要参加微软的online.所以今天把微软的面试题拿出来做了,自己解答了题目.下面附上我的解答代码. -----------16年9月校招: 第一道题:Farthest Point(最远的整 ...
- C/C++: C++位域和内存对齐问题
1. 位域: 1. 在C中,位域可以写成这样(注:位域的数据类型一律用无符号的,纪律性). struct bitmap { unsigned a : ; unsigned b : ; unsigned ...
- tp5 model 中的类型转换
类型转换使用 $type 定义 // 保存到数据库的数据会自动转换为相对应的格式class User extends Model { protected $type = [ 'status' => ...
- Python 小爬虫流程总结
接触Python3一个月了,在此分享一下知识点,也算是温故而知新了. 接触python之前是做前端的.一直希望接触面能深一点.因工作需求开始学python,几乎做的都是爬虫..第一个demo就是爬取X ...
- October 26th Week 44th Wednesday 2016
No matter how far you may fly, never forget where you come from. 无论飞得多高,也不要忘记起飞的地方. I never forget w ...