python元组学习
来源:互联网 发布:网络十大神神兽 编辑:程序博客网 时间:2024/04/28 19:23
元组
>>> s = "abc"
>>> s
'abc'
>>> t = 123,'abc',["come","here"]
>>> t
(123,'abc',["come","here"])
上面的例子中看到的变量t,并没有报错,也没有"最后一个有效",而是将对象作为一个新的数据类型:tuple(元组),赋值给了变量t。
元组是用括号括起来的,其中的元素之间用逗号隔开。
元组中的元素类型是任意的python数据
>>> print "I love %s, and I am a %s" % ('python', 'programmer')
I love python, and I am a programmer
这里的圆括号,就是一个元组。
>>> t = 1,"23",[123,"abc"],("python","learn") #元素多样性,近list
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> t[0] = 0 #不能原地修改,近str
TypeError:
>>> t.append("no")
AttributeError:
索引和切边
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> t[2]
[123, 'abc']
>>> t[1:]
("23",[123,"abc"],("python","learn"))
>>> t[2][0] #
123
>>> t[3][1]
'learn'
特别提醒:如果一个元组中只有一个元素的时候,应该在该元素后面加一个半角的英文逗号
>>> a = (3)
>>> type(a)
<type 'int'>
>>> b = (3,)
>>> type(b)
<type 'ruple'>
如果不加那个逗号,就不是元组。这也是为了避免让python误解你表达的内容。
分别用list()和tuple()能够实现两者的转化:
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> tls = list(t)
>>> tls
[1,"23",[123,"abc"],("python","learn")]
>>> t_tuple = tuple(tls)
>>> t_tuple
(1,"23",[123,"abc"],("python","learn"))
tuple用在哪里?
它的使用情景:
1)Tuple比list操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用tuple替代list。
2)如果对不需要修改的数据进行“写保护”,可以使用代码更安全。使用tuple而不是list如同拥有一个隐含的assert语句,说明这一数据是常量。如果必须要改变这些值,则需要执行tuple到list的转换(需要使用一个特殊的函数)。
3)Tuple可以在dictionary(字典)中被用做Key。但是list不行。Dictionary key必须是不可变的。Tuple本身是不可变的,但是如果您有一个list的tuple,那就认为是可变的了,用作dictionary key就是不安全的。
4)Tuples可以用在字符串格式化中。
>>> s = "abc"
>>> s
'abc'
>>> t = 123,'abc',["come","here"]
>>> t
(123,'abc',["come","here"])
上面的例子中看到的变量t,并没有报错,也没有"最后一个有效",而是将对象作为一个新的数据类型:tuple(元组),赋值给了变量t。
元组是用括号括起来的,其中的元素之间用逗号隔开。
元组中的元素类型是任意的python数据
>>> print "I love %s, and I am a %s" % ('python', 'programmer')
I love python, and I am a programmer
这里的圆括号,就是一个元组。
>>> t = 1,"23",[123,"abc"],("python","learn") #元素多样性,近list
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> t[0] = 0 #不能原地修改,近str
TypeError:
>>> t.append("no")
AttributeError:
索引和切边
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> t[2]
[123, 'abc']
>>> t[1:]
("23",[123,"abc"],("python","learn"))
>>> t[2][0] #
123
>>> t[3][1]
'learn'
特别提醒:如果一个元组中只有一个元素的时候,应该在该元素后面加一个半角的英文逗号
>>> a = (3)
>>> type(a)
<type 'int'>
>>> b = (3,)
>>> type(b)
<type 'ruple'>
如果不加那个逗号,就不是元组。这也是为了避免让python误解你表达的内容。
分别用list()和tuple()能够实现两者的转化:
>>> t
(1,"23",[123,"abc"],("python","learn"))
>>> tls = list(t)
>>> tls
[1,"23",[123,"abc"],("python","learn")]
>>> t_tuple = tuple(tls)
>>> t_tuple
(1,"23",[123,"abc"],("python","learn"))
tuple用在哪里?
它的使用情景:
1)Tuple比list操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用tuple替代list。
2)如果对不需要修改的数据进行“写保护”,可以使用代码更安全。使用tuple而不是list如同拥有一个隐含的assert语句,说明这一数据是常量。如果必须要改变这些值,则需要执行tuple到list的转换(需要使用一个特殊的函数)。
3)Tuple可以在dictionary(字典)中被用做Key。但是list不行。Dictionary key必须是不可变的。Tuple本身是不可变的,但是如果您有一个list的tuple,那就认为是可变的了,用作dictionary key就是不安全的。
4)Tuples可以用在字符串格式化中。
0 0
- python元组学习
- python学习-元组
- python元组学习
- python学习:元组
- python学习:关于元组
- python学习:元组tuple
- python-元组学习笔记
- Python元组学习笔记
- python学习记录--元组
- python学习-元组、列表
- Python学习之元组
- python学习之元组
- PYTHON-学习笔记:元组
- python基础学习--元组
- python学习记录:元组
- Python学习(4)--元组
- python学习之元组
- python学习四--元组
- 格格她爹讲程序之做个有钱猿
- NSURLSession功能初探(一)
- Java LockSupport
- SNMP++ 04-SNMP中OBJECT IDENTIFIER的BER编码与解码及一些思考
- 数据结构排序
- python元组学习
- 关于质数的算法
- python字典的学习1
- 获得KERNEL32.DLL模块地址以及函数的地址
- 回调的实现
- HDOJ 5365 Run
- 动态规划 problem Q
- UITextView小结
- 改进的冒泡排序算法