一.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 6229 Wandering Robots(2017 沈阳区域赛 M题,结论)

    题目链接  HDU 6229 题意 在一个$N * N$的格子矩阵里,有一个机器人. 格子按照行和列标号,左上角的坐标为$(0, 0)$,右下角的坐标为$(N - 1, N - 1)$ 有一个机器人, ...

  2. 某考试 T3 C

    找不着原题了. 原题大概就是给你一条直线上n个点需要被覆盖的最小次数和m条需要花费1的线段的左右端点和1条[1,n]的每次花费为t的大线段. 问最小花费使得所有点的覆盖数都达到最小覆盖数. 感觉这个函 ...

  3. springBoot 整合 mybatis+Oracle

    现在比较流行的操作数据库操作层框架Mybatis,下面我们就来看看Springboot如何整合mybatis, 之前一直在用xml形式写sql,这次依然用xml的方式感觉这种还是比较灵活方便. 添加m ...

  4. 方程式组织EQUATION DRUG平台解析(提纲) —方程式组织系列分析报告之四

    https://www.bleepingcomputer.com/news/security/shadow-brokers-release-new-files-revealing-windows-ex ...

  5. 调试SQLSERVER (一)生成dump文件的方法

    http://www.cnblogs.com/lyhabc/p/4184149.html http://www.cnblogs.com/lyhabc/p/4185399.html

  6. 翻译BonoboService官网的安装教程

    This page covers simple Bonobo Git Server installation. Be sure to check prerequisites page before i ...

  7. 【mybatis】从一个错误,看mybatis中的#和$的区别

    事情的发展是这样的: 因为一个需求,需要在java中拼接出一个完整的sql语句,然后将整条sql语句传递给mybatis执行. mapper.java是这样的: int insertMaster(Wo ...

  8. 从Android动画到贝塞尔曲线

    基础知识: 动画通过连续播放一系列画面,给视觉造成连续变化的图画.很通俗的一种解释.也很好理解.那么我们先来一个案例看看. 动画案例:百度贴吧小熊奔跑 效果: topic.gif 代码: <?x ...

  9. mac 安装 word2016并破解

    http://blog.csdn.net/zqbx7/article/details/53448280

  10. 经验分享 | Burpsuite抓取非HTTP流量

    使用Burp对安卓应用进行渗透测试的过程中,有时候会遇到某些流量无法拦截的情况,这些流量可能不是HTTP协议的,或者是“比较特殊”的HTTP协议(以下统称非HTTP流量).遇到这种情况,大多数人会选择 ...