python3 元组 (tuple)

元组是不可改变的序列, 同list 一样, 元组可以存放任意的值;

表示方法:

用小括号()括起来;  单个元素括起来后加逗号(,)区分单个对象还是元组;

创建空元组:

t = ()   #空元组

t= tuple() #空元组

创建一个非空元组:

t = (10,) # 含有一个元素的元组;

t= 10,

t=(1,2,3)

t= 10 ,20, 30

t = ‘hello’ ,

t = (‘1’,‘2’, ‘tree’)

创建元组错误示例:

t = (20)

#序列赋值

x, y = 100, 200  # x绑定100, y绑定200

x, y = (100, 200)  # x绑定100, y绑定200

x, y = [100, 200]  # x绑定100, y绑定200

x, y = "AB"  #序列赋值

元组的构造(生成)函数tuple

tuple()               #生成一个空元组, 等同于()

tuple(iterable)   #用可迭代对象生成一个元组

元组的运算:

算术运算:   +   、  +=   、  *  、 *=

+     拼接

+=    拼接后对变量赋值

*      生成重复的元组

*=     生成重复的元组并赋值给变量

 >>> (1,3) + (4,5)
(1, 3, 4, 5)
>>> x = (1,2,3)
>>> x += (4,)
>>> x
(1, 2, 3, 4)
>>>
>>> x
(1, 2, 3, 4)
>>> x * 3
(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)
>>> x
(1, 2, 3, 4)
>>> x *= 3
>>> x
(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)
>>>

比较运算符:  <    <=    >   >=    ==  !=

 >>> x =(1,2,3)
>>> y = (1,3,2)
>>> x < y
True
>>> x > y
False
>>> x == y
False
>>> x != y
True
>>>

元组的 in  / not in  运算符

同字符串和列表的in 运算符相同,用于判断一个值是否存在于元组中,存在返回True,不存在返回False。

 >>> x
(1, 2, 3)
>>> 1 in x
True
>>> 5 in x
False
>>> 5 not in x
True

元组的索引  indes

等同于字符串的索引规则; 但是元组不能切片赋值;

 >>> x
(1, 2, 3)
>>> x[0]
1
>>> x[0] = 5
Traceback (most recent call last):
File "<pyshell#51>", line 1, in <module>
x[0] = 5
TypeError: 'tuple' object does not support item assignment
>>> x[::2] = 5,6
Traceback (most recent call last):
File "<pyshell#52>", line 1, in <module>
x[::2] = 5,6
TypeError: 'tuple' object does not support item assignment
>>>

可用于序列的函数总结:

len(x)

max(x)

min(x)

sum(x)

any(x)

all(x)

reversed(seq)   # 返回反向序列顺序的迭代器

sorted(iterable)      #返回已排序的列表

 >>> s = 'ABCDEF'
>>> reversed(s)
<reversed object at 0x00000000034CA710>
>>> r = reversed(s)
>>> r
<reversed object at 0x0000000003711BA8>
>>> list(r)
['F', 'E', 'D', 'C', 'B', 'A']
>>> list(r)
[] #在迭代器里再去拿数据时已经没有了,拿不了了。

s='ABC'

for  x in reversed(s):

print(x)

 >>> s = 'ABCDEF'
>>> r = reversed(s)
>>> for x in r:
print(x) F
E
D
C
B
A
>>>
>>> s = 'AGBDCEF'
>>> sorted(s) #正向
['A', 'B', 'C', 'D', 'E', 'F', 'G']
>>> sorted(s, reverse=True) #反向
['G', 'F', 'E', 'D', 'C', 'B', 'A']
>>> ''.join(sorted(s)) #可迭代对象合并成列表
'ABCDEFG'
>>>
>>> help(''.join)
Help on built-in function join: join(...) method of builtins.str instance
S.join(iterable) -> str Return a string which is the concatenation of the strings in the
iterable. The separator between elements is S. >>>

元组的方法:

T.index( v [, begin [,end]])  返回对应元素索引的下标,begin为开始索引,end为结束索引(不包含end);

T.count(x)  返回元组中对应元素的个数;

练习:

Python之路,第七篇:Python入门与基础7的更多相关文章

  1. Python之路(第七篇)Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

    一.作用域 return 可以返回任意值例子 def test1(): print("test1") def test(): print("test") ret ...

  2. 【Python之路】第九篇--Python基础之线程、进程和协程

    进程与线程之间的关系 线程是属于进程的,线程运行在进程空间内,同一进程所产生的线程共享同一内存空间,当进程退出时该进程所产生的线程都会被强制退出并清除.线程可与属于同一进程的其它线程共享进程所拥有的全 ...

  3. Python之路(第五篇) Python基本数据类型集合、格式化、函数

    一.变量总结 1.1 变量定义 记录某种状态或者数值,并用某个名称代表这个数值或状态. 1.2 变量在内存中的表现形式 Python 中一切皆为对象,数字是对象,列表是对象,函数也是对象,任何东西都是 ...

  4. 【Python之路】特别篇--Python面向对象(进阶篇)

    上一篇<Python 面向对象(初级篇)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使 ...

  5. Python之路【第九篇】堡垒机基础&数据库操作

    复习paramiko模块 Python的paramiko模块,是基于SSH用于连接远程服务器并执行相关操作. SSHClient #!/usr/bin/env python #-*- coding:u ...

  6. Python之路(第八篇)Python内置函数、zip()、max()、min()

    一.python内置函数 abs() 求绝对值 例子 print(abs(-2)) all() 把序列中每一个元素做布尔运算,如果全部都是true,就返回true, 但是如果是空字符串.空列表也返回t ...

  7. 【Python之路】特别篇--Python切片

    字符串切片操作 切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割. 注意: 数是可选的,而冒号是必须的. consequence[start:end:step] 切片操作符中的 ...

  8. 【Python之路】特别篇--Python内置函数

    abs() 求绝对值 i = abs(-100) print(i) # 100 all() 循环里面的参数 如果每个元素都为真,那么all返回值为真  假: 0 False None "&q ...

  9. 【Python之路】特别篇--Python文件操作

    文件操作 open函数,该函数用于文件处理 操作文件时,一般需要经历如下步骤: (1)打开文件 (2)操作文件 一.打开文件 文件句柄 = open('文件路径', '模式','编码') 打开文件时, ...

  10. 【Python之路】特别篇--Python装饰器

    前情提要 1. 作用域 在python中,函数会创建一个新的作用域.python开发者可能会说函数有自己的命名空间,差不多一个意思.这意味着在函数内部碰到一个变量的时候函数会优先在自己的命名空间里面去 ...

随机推荐

  1. Visual Studio编译时报错“函数名:重定义;不同的基类型”

    错误原因: 方法在还未声明的地方就使用了.由于使用的地方与定义的地方都是在同一个.c文件中,所以没有报未声明的错误. 解决方法: 把实现放到使用的前面,或者在include语句和宏定义后面加上函数声明 ...

  2. 解决VS Code保存时候自动格式化

    VS code 保存会自动格式化.以前都是alt+shift+F格式化的,现在一保存就格式化 解决方式:找到你的VScode扩展,把JS-CS-HTML Formatter这个插件禁用就可以解决

  3. Linux登录超时自动退出处理办法

    出于安全方面的考虑,机器常要求配置一个登录时间期限,当闲置超过这一期限就自动退出:但在某些场合我们需要时不时地就使用机器,如果每次都要重新ssh登录那是非常麻烦的 方法一:让当前会话一直处于工作状态 ...

  4. java基础语法运算符

    1.1                算数运算符++.--的使用 在一般情况下,算数运算符不会改变参与计算的变量值.而是在原有变量值不变的情况下,计算出新的值.但是有些操作符会改变参与计算的变量的值, ...

  5. 配置嵌入式Servlet容器

    SpringBoot默认是用的是Tomcat作为嵌入式的Servlet容器:问题?1).如何定制和修改Servlet容器的相关配置:1.修改和server有关的配置(ServerProperties) ...

  6. Sql server2008如何导入Excel文件数据?

    sql server 中如何使用Excel文件导入数据?我做个测试,首先建立一个测试表(民族表) --创建一个民族表-- create table BdsNation( Uid int not nul ...

  7. python-flask基础

    get请求: 使用场景:如果只对服务器获取数据,并没有对服务器产生任何影响,那么这时候使用get请求. 传参:get请求传参是放在url中,并且是通过’?’的形式来指定key和value的. post ...

  8. H5离线缓存技术Application Cache

    H5离线缓存技术Application Cache 1.离线缓存技术:是浏览器本身的一种机制 HTML5引入Application Cache(应用程序缓存)技术,离线存储可以将站点的一些文件存储在本 ...

  9. wpf自定义控件中使用自定义事件

    wpf自定义控件中使用自定义事件 1 创建自定义控件及自定义事件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 ...

  10. PHP和Mysql事物处理

    这几天做支付的时候,又用到了事物,为了方便自己以后查看,今天闲的没事就把以前的东西整理下.(其中引用别人的东西,在这里谢谢他们贡献的代码!) 一.事务处理概述: 事务:是若干事件的集合 事务处理:当所 ...