Python中tuple格式化字符串

4.1 元组定义:

  1. 说明:元组不可以修改,一般用圆括号括起来
  2. 例子:

元组的定义:使用圆括号括起来,元素之间用逗号分隔;空的圆括号表示空元组;当只有一个元素时,必须以逗号结尾。

#一般元组

>>> 1,2,3

(1, 2, 3)

>>> (1,2,3)

(1, 2, 3)



#一个元素的元组

>>> (1,)

(1,)

>>> 2,

(2,)



#空元组

>>> ()

()

>>> 



#元组的乘法

>>> 4* (2,)

(2, 2, 2, 2)

>>> 



4.2 tuple函数

  1. 说明:以一个序列为参数,将其转换为元组;
  2. 例子:
>>> tuple("CONSTANT")

('C', 'O', 'N', 'S', 'T', 'A', 'N', 'T')

>>> tuple(list("CONST"))

('C', 'O', 'N', 'S', 'T')

>>> 

 

 

 

创建一个tuple是简单,只要把不同的逗号分隔值可选,你可以把这些括号逗号分隔值。例如:

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";

空的tuple包含两个没有括号写:

tup1 = ();

写一个包含一个单一的价值,你必须包含一个逗号,即使是只有一个值:

tup1 = (50,);

字符串的索引一样,元组指数从0开始,元组可以被切片,串联等。

访问元组中的值:

要访问的tuple值,使用指数或指数切片获得的价值在该指数的方括号:
例如:

#!/usr/bin/python

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );

print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]

 这将输出以下结果:

tup1[0]:  physics
tup2[1:5]:  [2, 3, 4, 5]

更新元组:

元组是不可改变的,这意味着你不能更新或改变元组元素的值。但是,我们能够能够利用现有的元组的部分如下创建一个新的元组:
例如:

#!/usr/bin/python

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');

# Following action is not valid for tuples
# tup1 += tup2;

# So let's create a new tuple as follows
tup3 = tup1 + tup2;
print tup3;

 这将输出以下结果:

(12, 34.56, 'abc', 'xyz')


删除元组的元素:

删除单个元组元素是不可能的。有,当然,把另一个丢弃不需要的元素的tuple没有错。
要明确地删除整个元组,只需使用del语句:
例如:

#!/usr/bin/python

tup = ('physics', 'chemistry', 1997, 2000);

print tup;
del tup;
print "After deleting tup : "
print tup;

这将输出以下结果:

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
  File "test.py", line 9, inprint tup;
NameError: name 'tup' is not defined

基本操作元组:

元组的回应很像字符串+和*运算符,他们在这里的意思串联重复太多,但结果是一个新的tuple,而不是一个字符串。
事实上,元组应对所有在之前的章节,我们对字符串使用的一般顺序操作:

Python表达式 结果 描述
len((1, 2, 3)) 3 Length
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) Concatenation
['Hi!'] * 4 ('Hi!', 'Hi!', 'Hi!', 'Hi!') Repetition
3 in (1, 2, 3) True Membership
for x in (1, 2, 3): print x, 1 2 3 Iteration

 


索引,切片,和矩阵:

因为元组序列,索引和切片工作,以同样的方式,为他们做字符串的元组。

假设下面的输入:

L = ('spam', 'Spam', 'SPAM!')


 

Python 表达式 结果 描述
L[2] 'SPAM!' Offsets start at zero
L[-2] 'Spam' Negative: count from the right
L[1:] ['Spam', 'SPAM!'] Slicing fetches sections


 

没有围护分隔符:

任何多个对象的集合,以逗号分隔,没有识别符号写的,也就是说,括号内的元组的列表,括号等,默认元组,因为在这些短期的例子表明:

#!/usr/bin/python

print 'abc', -4.24e93, 18+6.6j, 'xyz';
x, y = 1, 2;
print "Value of x , y : ", x,y;
print var;

这将输出以下结果:

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2

 

 

 

result = '%s%s' % (self._root, self._key)

偶尔格式化字符串时会加入tuple,我一直弱弱地这么做:

 
1tup = (1, 2)
2'tup: (%d, %d)' % (tup[0], tup[1])

或者这么做

 
1tup = (1, 2)
2

'tup: %s' % str(tup)

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值