一.python的数据类型 序列--元组
1.序列
1》字符串,列表,元组都是序列。
2》序列的两个特点是索引操作符和切片操作符
索引操作符:我们可以从序列中抓取一个特定项目
切片操作符:让我们可以获取序列的一个切片,即一部分序列
 
2.序列的基本操作:
1》len() //求序列的长度
2》+ //连接2个序列
3》* //重复序列元素
4》in //判断元素是否在序列中
5》max() //返回最大值
6》min() //返回最小值
7》cmp(x,y) //比较两个序列是否相等。cmp比较的不是字母多少个,比较的是字母的大小(a-z由小到大)
 
len用法:求序列的长度
In [2]: a = 'abcdef'
In [3]: a
Out[3]: 'abcdef'
 
In [4]: len(a)
Out[4]: 6
 
‘+’ 号用法:连接两个序列
In [5]: a + 'g'
Out[5]: 'abcdefg'
 
 
‘*’ 号用法:重复序列元素
In [6]: a *3 //abcdef 重复3次
Out[6]: 'abcdefabcdefabcdef'
 
In [9]: '#' * 5 //#号重复5次
Out[9]: '#####'
 
in用法:判断元素是否在序列里
In [10]: a
Out[10]: 'abcdef'
 
In [11]: 'a' in a //判断a的字符是否在a的序列里,返回值为true
Out[11]: True
 
In [12]: 'h' in a //判断h是否在a的序列里,返回值为false,说明不在a的序列里
Out[12]: False
 
not in 用法://判断元素不在序列里
In [13]: 'h' not in a //判断h是否在a的序列里,返回值为true,说明h不在a的序列里
Out[13]: True
 
max() 与 min() 求一个序列里的最大值与最小值
In [14]: a
Out[14]: 'abcdef'
 
In [15]: max(a) //a序列里的最大值为f
Out[15]: 'f'
 
In [16]: min(a) //a序列里的最小值为a
Out[16]: 'a'
 
cmp(x,y):比较两序列是否相等
In [17]: help(cmp)
Help on built-in function cmp in module __builtin__:
 
cmp(...)
cmp(x, y) -> integer
 
Return negative if x<y, zero if x==y, positive if x>y.
注:如果返回值为负数(negative)则x小于y。如果返回值为0,则x等于y。如果返回值为正数,则x大于y。
In [24]: a //a的序列为“abcdef”
Out[24]: 'abcdef'
 
In [23]: cmp(a,'abcde') //比较a的序列与字符串abcde。返回值为正数,说明a序列大于字符串abcde
Out[23]: 1
 
In [25]: cmp(a,'abcdef') //返回值为0,说明a序列等于字符串“abcdef”
Out[25]: 0
 
In [26]: cmp(a,'abcdefg') //返回值为负1,说明a序列小于字符串“abcdefg”
Out[26]: -1
 
In [27]: cmp(a+'g','abcdefg') //返回值为0,说明相等
Out[27]: 0
 
 
2.元组(),定义元组用圆括号表示
1》元组和列表十分相似
2》元组和字符串一样是不可变的
元组可以存储一系列的值
元组通常用在用户定义的函数能够安全的采用一组值的时候,即被使用的元组的值不会改变。
3》定义一个元组
In [30]: t = ('a',1,(1,)) //元组里可以存放:字符,数字,还可以存放另一个元组(1,)
In [31]: t
Out[31]: ('a', 1, (1,))
 
In [32]: t1 = (1,) //定义一个新的元组为t1,圆括号里边的1,只有加逗号才表示元组
In [34]: type (t1) //t1的类型
Out[34]: tuple 元组
 
In [35]: t //查看t元组
Out[35]: ('a', 1, (1,))
 
In [36]: t[0] //查看t元组中第一个字符为a
Out[36]: 'a'
 
In [37]: t[0] = 6 //想把第一个字符变成6,报错,说明元组里的东西是不可变的
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-37-b3ff79bf2df1> in <module>()
----> 1 t[0] = 6
 
TypeError: 'tuple' object does not support item assignment //元组里的项目不支持改变
 
3. 元组的操作。
 
1》 元组和字符串一样属于序列类型,可以通过索引和切片操作
元组值不可变
 
元组的操作:
In [20]: a
Out[20]: 'abc'
 
In [21]: t = (a,'b','c')
 
In [22]: t
Out[22]: ('abc', 'b', 'c')
 
 
2》元组的拆分
- t = (1,2,3)
a,b,c = t
 
通过变量接收元组的值:
In [23]: first,second,third = t
 
In [24]: first
Out[24]: 'abc'
 
In [25]: second
Out[25]: 'b'
 
In [26]: third
Out[26]: 'c'
 
查看元组里边的方法
In [27]: t.
t.count t.index //有两个方法。python是一个面向对象的语言,count,index等都是t的方法。
 
In [28]: help(t.count)
Help on built-in function count:
 
count(...)
T.count(value) -> integer -- return number of occurrences of value
查看value 值在元组中出现的次数
 
In [32]: a
Out[32]: 'abc'
 
In [33]: t = (a,'b','c') //t的元组
 
In [34]: t
Out[34]: ('abc', 'b', 'c')
 
In [30]: t.count('b')
Out[30]: 1 // b元素在元组里出现里1次。abc 是一个整体
 
In [31]: t.count('f')
Out[31]: 0 // f元素没在元组里出现过
 
In [35]: t.count(a)
Out[35]: 1 //value值为一个变量时,返回值也是整数
 
In [36]: help(t.index)
Help on built-in function index:
 
index(...)
T.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
查找 t.index元组里边value元素的第一个索引值。例子如下:
In [38]: t
Out[38]: ('abc', 'b', 'c')
 
In [39]: t.index('b')
Out[39]: 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

python 基础 1.5 python数据类型(三)--元组的更多相关文章

  1. Python 基础之socket编程(三)

    python 基础之socket编程(三) 前面实现的基于socket通信只能实现什么呢?在tcp协议的通信中就是一个用户说一句,服务端给你回一句,你再给服务端说一句,服务端再给你回一句,就这样一直友 ...

  2. python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda

    ---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单, ...

  3. python基础系列教程——Python中的编码问题,中文乱码问题

    python基础系列教程——Python中的编码问题,中文乱码问题 如果不声明编码,则中文会报错,即使是注释也会报错. # -*- coding: UTF-8 -*- 或者 #coding=utf-8 ...

  4. python基础系列教程——Python库的安装与卸载

    python基础系列教程——Python库的安装与卸载 2.1 Python库的安装 window下python2.python3安装包的方法 2.1.1在线安装 安装好python.设置好环境变量后 ...

  5. python基础之五大标准数据类型

    学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...

  6. Python基础:序列(列表、元组)

    一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...

  7. 第二章:Python基础の快速认识基本数据类型和操作实战

    本课主题 字符串和操作实战 二进制操作实战 List 列表和操作实战 Tuple 元組和操作实战 Dict 字典和操作实战 作業需求 引言 这遍文章简单介绍了 Python 字符串和集合的方法和应用, ...

  8. python基础(2)---数据类型

    1.python版本间的差异: 2.x与3.x版本对比 version 2.x 3.x print print " "或者print()打印都可以正常输出 只能print()这种形 ...

  9. python基础1之python介绍、安装、变量和字符编码、数据类型、输入输出、数据运算、循环

    开启python之路 内容概要: 一.python介绍 二.安装 三.第一个python程序 四.变量和字符编码 五.用户输入 六.数据类型 七.一切皆对象 八.数据运算 九.if else 流程判断 ...

随机推荐

  1. hdu 4859(思路题)

    Goffi and Squary Partition Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Ja ...

  2. springBoot 环境

    环境约束 jdk1.8:Spring Boot 推荐jdk1.7及以上:maven3.x:maven 3.3以上版本:Apache Maven 3.3.9.IntelliJIDEA2017:Intel ...

  3. ie8实现无刷新文件上传

    ie8由于无法使用FormData,想要无刷新上传文件就显得比较麻烦.这里推荐使用jQuery-File-Upload插件,它能够很方便的解决ie8无刷新文件上传问题.(最低兼容到ie6) jQuer ...

  4. 2016北京集训测试赛(十四)Problem A: 股神小L

    Solution 考虑怎么卖最赚钱: 肯定是只卖不买啊(笑) 虽然说上面的想法很扯淡, 但它确实能给我们提供一种思路, 我们能不买就不买; 要买的时候就买最便宜的. 我们用一个优先队列来维护股票的价格 ...

  5. IOS 开发之 Method Swizzling

    ios 分类中如果增加的方法与被扩展的类方法名重复,则原方法就没法被调用….看以下例子 例如: @interface ClassA : NSObject - (NSString *) myMethod ...

  6. mac下virtualenv使用

    1  sudo pip install virtualenv 安装 2 找一合适目录装虚拟环境 virtualenv virzhongguo 3  激活虚拟环境 source virzhongguo/ ...

  7. mysql赋给用户权限grant all privileges on

    查看mysql用户表的结构,Field项都是各类权限限制 Host限制登录的IP,User限制登录的用户,Delete_priv限制删除权限,Grant_priv限制权限授予,Super_priv为超 ...

  8. ASP.NET WebAPI 路由规则与POST数据 【转】

    http://www.cnblogs.com/liulun/archive/2012/06/20/2556556.html 蛋疼的路由规则约定 在上一篇文章中 我们成功通过AJAX获取到了服务器的数据 ...

  9. OpenSceneGraph-3.3.3

    OpenSceneGraph-3.3.3, [/b]released on 19th December 2014, key deliverables in this dev release are: ...

  10. JavaScript学习与实践一

    一.JavaScript数组 创建JavaScript数组有两种方式 方式一: var cars=new Array(); cars[0]="Audi"; cars[1]=&quo ...