国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python基礎教程之元組操作使用詳解

2019-11-25 18:28:42
字體:
來源:轉載
供稿:網友

簡介

tuple

1.元組是以圓括號“()”包圍的數據集合,不同成員以“,”分隔。通過下標進行訪問

2.不可變序列,可以看做不可變的列表,與列表不同:元組中數據一旦確立就不能改變(所以沒有類似列表的增刪改操作,只有基本序列操作)

3.支持任意類型,任意嵌套以及常見的序列操作

4.元組通常用在使語句或用戶定義的函數能夠安全地采用一組值的時候,即被使用的元組的值不會改變

聲明及使用

復制代碼 代碼如下:

t = ()  #空元組
t =(1,)  #單個元素元組,注意逗號必須
t =(1,2,3)


1 in t #判斷
2 not in t

#其他同序列基本操作:分片,索引
print t[0]
print t[-1]
print t[:2]

#不會對原來元組造成影響
print t+(4,5)  #返回新元組(1,2,3,4,5)
print t * 2    #(1,2,3,1,2,3)
t.index(1)
t.count(1)

#列表元組轉換
l = [1,2,3]
lt = tuple(l)
tl = list(lt)
lt_sorted = sorted(l)  #對元組進行排序,返回是列表

#字符串轉元組(得到字符元組序列)
print tuple('hello)   #('h','e','l','l','o')
tuple沒有append/extend/remove/pop等增刪改操作tuple沒有find

查看幫助

復制代碼 代碼如下:

help(tuple)

用途

1.賦值

復制代碼 代碼如下:

t = 1,2,3   #等價 t = (1, 2, 3)
x, y, z = t   #序列拆封,要求左側變量數目和右側序列長度相等

2.函數多個返回值

復制代碼 代碼如下:

def test():
    return (1,2)
x, y = test()

3.傳參[強制不改變原始序列]

復制代碼 代碼如下:

def print_list(l):
    t = tuple(l)   #或者t = l[:]
    dosomething()

4.字符串格式化

復制代碼 代碼如下:

print '%s is %s years old' % ('tom', 20)

5.作為字典的key

優點
1.性能

tuple比列表操作速度快

若需要定義一個常量集,或者是只讀序列,唯一的操作是不斷遍歷之,使用tuple代替list

復制代碼 代碼如下:

>>> a = tuple(range(1000))
>>> b = range(1000)
>>> def test_t():
...     for i in a:
...             pass
...
>>> def test_l():
...     for i in b:
...             pass
...
>>> from timeit import Timer
>>> at = Timer("test_t()", "from __main__ import test_t")
>>> bt = Timer("test_l()", "from __main__ import test_l")

簡單測試

復制代碼 代碼如下:

>>> at.repeat(3, 100000)
[1.526214838027954, 1.5191287994384766, 1.5181210041046143]

>>> bt.repeat(3, 100000)
[1.5545141696929932, 1.557785987854004, 1.5511009693145752]

2.不可變性

對不需要的數據進行“寫保護”,使代碼更加安全

不可變性,若在程序中以列表形式傳遞對象集合,可能在任何地方被改變,使用元組,則不能

不可變性只適用于元組本身頂層而非其內容,例如元組內部的列表可以修改

復制代碼 代碼如下:

l = [1,2,3]
t = (1,2,l)
l.append(4)

不可變性提供了某種完整性,規范化,確保不會被修改,保持某種固定關系

修改的方法

復制代碼 代碼如下:

tuple -> list -> tuple

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岱山县| 乌拉特前旗| 霞浦县| 屏南县| 西丰县| 平昌县| 安龙县| 炉霍县| 临湘市| 手游| 汪清县| 浦东新区| 逊克县| 桐乡市| 商城县| 东明县| 七台河市| 靖州| 博白县| 虎林市| 遵化市| 府谷县| 贵阳市| 临城县| 柘城县| 十堰市| 吉木乃县| 波密县| 应城市| 云梦县| 常宁市| 宜阳县| 罗田县| 济阳县| 邛崃市| 上思县| 马鞍山市| 剑阁县| 乃东县| 新昌县| 宁津县|