Python_Tuple

1、创建元组

    方式一:tu=(元素1,元素2.....)

    方式二:tu=tuple(传入可迭代的元素)  也是元组的转换

2、元组的转换

  

dic1={"k1":123,"k2":"abc","k3":[123,456]}
#字符串转换成元组
t=tuple("abcdef")
# 列表转换成元组
tu=tuple(["123",345,"abc"])
# 字典转换成元组
# 默认转换 keys
tu0=tuple(dic1)
# values 转换成元组元素
tu1=tuple(dic1.values())
#items 转换成元组元素 没对键值对作为一个元组成为一个元组元素
tu2=tuple(dic1.items())
print(t)
print(tu0)
print(tu)
print(tu1)
print(tu2)

结果:

('a', 'b', 'c', 'd', 'e', 'f')
('k2', 'k3', 'k1')
('123', 345, 'abc')
('abc', [123, 456], 123)
(('k2', 'abc'), ('k3', [123, 456]), ('k1', 123))

3、元组的特有方法
  a、count(self,value)  count方法只统计指定value本身作为元组元素出现的次数

    

tu=(22,"aa",["aa",{"k1":"aa"}],"bb")
i=tu.count("aa")
print(i)

  结果:

  

1

  b、index(self,value,start,stop)  value 指定的值,start开始查找的位置 ,stop结束查找的位置 start和stop非必须 ,不传默认从零开始查找,反之从指定的开始位置开始查找。index特点查到指定元素的位置返回坐标值,反之报错:提示指定的元素不存在该元组中

  

tu=(22,"aa","nn","aa",["aa",{"k1":"aa"}],"aa")
i=tu.index("aa",2,len(tu))
print(i)
i1=tu.index("bb")
print(i1)

结果:

3
  File "E:/PythonProject/day01/pydatatype.py", line 161, in <module>
    i1=tu.index("bb")
ValueError: tuple.index(x): x not in tuple

4、元组的特点是不可修改,是元组的元素元素不能修改,如果内部有嵌套的其他可迭代的元素这些元素是可修改的,但是字符串除外
  

tu=(22,"aa",["bb",{"k1":"yang"}])
tu[2].append("cc")
tu[2][1]["k1"]=""
print(tu)
tu[1]="abc"

结果:
  

(22, 'aa', ['bb', {'k1': ''}, 'cc'])
  File "E:/PythonProject/day01/pydatatype.py", line 169, in <module>
    tu[1]="abc"
TypeError: 'tuple' object does not support item assignment

 

posted @ 2017-09-11 15:43  ruijing  阅读(141)  评论(0编辑  收藏  举报