python元组操作实例解析

yipeiwu_com6年前Python基础

本文实例讲述了python元组操作方法,分享给大家供大家参考。具体分析如下:

一般来说,python的函数用法挺灵活的,和c、php的用法不太一样,和js倒是挺像的。

在照着操作时,可以发现一个很神奇的现象:

>>> t = (1, 3, 'b')
>>> q = t + ((3, 'abc'))
>>> q
(1, 3, 'b', 3, 'abc')

这里我预料的应该是(1, 3, 'b', (3, 'abc')),但是结果却是(1, 3, 'b', 3, 'abc'),刚开始我猜测python是把所有的元素都提取出来重新按原顺序组合。然后我又试了一下:

>>> q = t + ((3, 'abc'), '3')
>>> q
(1, 3, 'b', (3, 'abc'), '3')

看来猜测错了,那为什么q = t + ((3, 'abc'))就把元组拆分了呢,我又试了一下:

>>> q = t + ((3, 'abc', ('a')))
>>> q
(1, 3, 'b', 3, 'abc', 'a')

python又把元素里的元组里的('a')去掉了(),为了验证我的想法,我进一步测试:

>>> q = t + ((3, 'abc', ('a', 'ab')))
>>> q
(1, 3, 'b', 3, 'abc', ('a', 'ab'))

看来结果已经很明了了,在对元组进行+操作时,python会自动对被加的元组进行解析,在保持原元组结构的前提下,把它解析成最简单的元组进行相加,即把只有单一元素的多重元组去括号。
那么,如果我不想让python在+操作时把()去掉呢,那么这样操作就行了:

>>> q = t + ((3, 'abc'),)
>>> q
(1, 3, 'b', (3, 'abc'))

希望本文所述对大家Python程序设计的学习有所帮助。

相关文章

Python属性和内建属性实例解析

Python属性和内建属性实例解析

这篇文章主要介绍了Python属性和内建属性实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 私有属性添加getter和s...

Python设计模式之单例模式实例

注:使用的是Python 2.7。 一个简单实现复制代码 代码如下:class Foo(object):    __instance = None ...

python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法

python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法

1. test.txt文件,数据以逗号分割,第一个数据为x坐标,第二个为y坐标,数据如下:1.1,2 2.1,2 3.1,3 4.1,5 40,38 42,41 43,42 2....

python中pandas.DataFrame对行与列求和及添加新行与列示例

本文介绍的是python中pandas.DataFrame对行与列求和及添加新行与列的相关资料,下面话不多说,来看看详细的介绍吧。 方法如下: 导入模块: from pandas i...

Python中设置变量访问权限的方法

在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑。 但是,从前面Student类的定义来看,外部代码还是可以自由地修改...