新聞中心
Python3 元組
Python 的元組與列表類似,不同之處在于元組的元素不能修改。

在南寧等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作專業(yè)公司,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),營銷型網(wǎng)站,外貿(mào)網(wǎng)站制作,南寧網(wǎng)站建設(shè)費(fèi)用合理。
元組使用小括號(hào) ( ),列表使用方括號(hào) [ ]。
元組創(chuàng)建很簡單,只需要在括號(hào)中添加元素,并使用逗號(hào)隔開即可。
實(shí)例(Python 3.0+)
>>> tup1
=
(
'Google'
,
'Runoob'
,
1997
,
2000
)
>>> tup2
=
(
1
,
2
,
3
,
4
,
5
)
>>> tup3
=
"a"
,
"b"
,
"c"
,
"d"
# 不需要括號(hào)也可以
>>>
type
(tup3
)
<
class
'tuple'
>
創(chuàng)建空元組
tup1 = ()
元組中只包含一個(gè)元素時(shí),需要在元素后面添加逗號(hào) , ,否則括號(hào)會(huì)被當(dāng)作運(yùn)算符使用:
實(shí)例(Python 3.0+)
>>> tup1
=
(
50
)
>>>
type
(tup1
)
# 不加逗號(hào),類型為整型
<
class
'int'
>
>>> tup1
=
(
50
,
)
>>>
type
(tup1
)
# 加上逗號(hào),類型為元組
<
class
'tuple'
>
元組與字符串類似,下標(biāo)索引從 0 開始,可以進(jìn)行截取,組合等。
訪問元組
元組可以使用下標(biāo)索引來訪問元組中的值,如下實(shí)例:
實(shí)例(Python 3.0+)
#!/usr/bin/python3
tup1
=
(
'
Google
'
,
'
Runoob
'
,
1997
,
2000
)
tup2
=
(
1
,
2
,
3
,
4
,
5
,
6
,
7
)
print
(
"
tup1[0]:
"
,
tup1
[
0
]
)
print
(
"
tup2[1:5]:
"
,
tup2
[
1
:
5
]
)
以上實(shí)例輸出結(jié)果:
tup1[0]: Google tup2[1:5]: (2, 3, 4, 5)
修改元組
元組中的元素值是不允許修改的,但我們可以對元組進(jìn)行連接組合,如下實(shí)例:
實(shí)例(Python 3.0+)
#!/usr/bin/python3
tup1
=
(
12
,
34.56
)
tup2
=
(
'
abc
'
,
'
xyz
'
)
# 以下修改元組元素操作是非法的。
# tup1[0] = 100
# 創(chuàng)建一個(gè)新的元組
tup3
=
tup1
+
tup2
print
(
tup3
)
以上實(shí)例輸出結(jié)果:
(12, 34.56, 'abc', 'xyz')
刪除元組
元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個(gè)元組,如下實(shí)例:
實(shí)例(Python 3.0+)
#!/usr/bin/python3
tup
=
(
'
Google
'
,
'
Runoob
'
,
1997
,
2000
)
print
(
tup
)
del
tup
print
(
"
刪除后的元組 tup :
"
)
print
(
tup
)
以上實(shí)例元組被刪除后,輸出變量會(huì)有異常信息,輸出如下所示:
刪除后的元組 tup : Traceback (most recent call last): File "test.py", line 8, inprint (tup) NameError: name 'tup' is not defined
元組運(yùn)算符
與字符串一樣,元組之間可以使用 +、+=和 * 號(hào)進(jìn)行運(yùn)算。這就意味著他們可以組合和復(fù)制,運(yùn)算后會(huì)生成一個(gè)新的元組。
| Python 表達(dá)式 | 結(jié)果 | 描述 |
|---|---|---|
len((1, 2, 3)) | 3 | 計(jì)算元素個(gè)數(shù) |
>>> a = (1, 2, 3) >>> b = (4, 5, 6) >>> c = a+b >>> c (1, 2, 3, 4, 5, 6) | (1, 2, 3, 4, 5, 6) | 連接,c 就是一個(gè)新的元組,它包含了 a 和 b 中的所有元素。 |
>>> a = (1, 2, 3) >>> b = (4, 5, 6) >>> a += b >>> a (1, 2, 3, 4, 5, 6) | (1, 2, 3, 4, 5, 6) | 連接,a 就變成了一個(gè)新的元組,它包含了 a 和 b 中的所有元素。 |
('Hi!',) * 4
| ('Hi!', 'Hi!', 'Hi!', 'Hi!') | 復(fù)制 |
3 in (1, 2, 3) | True | 元素是否存在 |
for x in (1, 2, 3):
print (x, end=" ")
| 1 2 3 | 迭代 |
元組索引,截取
因?yàn)樵M也是一個(gè)序列,所以我們可以訪問元組中的指定位置的元素,也可以截取索引中的一段元素,如下所示:
元組:
tup = ('Google', 'Runoob', 'Taobao', 'Wiki', 'Weibo','Weixin')
| Python 表達(dá)式 | 結(jié)果 | 描述 |
|---|---|---|
| tup[1] | 'Runoob' | 讀取第二個(gè)元素 |
| tup[-2] | 'Weibo' | 反向讀取,讀取倒數(shù)第二個(gè)元素 |
| tup[1:] | ('Runoob', 'Taobao', 'Wiki', 'Weibo', 'Weixin') | 截取元素,從第二個(gè)開始后的所有元素。 |
| tup[1:4] | ('Runoob', 'Taobao', 'Wiki') | 截取元素,從第二個(gè)開始到第四個(gè)元素(索引為 3)。 |
運(yùn)行實(shí)例如下:
實(shí)例
>>> tup
=
(
'Google'
,
'Runoob'
,
'Taobao'
,
'Wiki'
,
'Weibo'
,
'Weixin'
)
>>> tup
[
1
]
'Runoob'
>>> tup
[-
2
]
'Weibo'
>>> tup
[
1:
]
(
'Runoob'
,
'Taobao'
,
'Wiki'
,
'Weibo'
,
'Weixin'
)
>>> tup
[
1:
4
]
(
'Runoob'
,
'Taobao'
,
'Wiki'
)
>>>
元組內(nèi)置函數(shù)
Python元組包含了以下內(nèi)置函數(shù)
| 序號(hào) | 方法及描述 | 實(shí)例 |
|---|---|---|
| 1 | len(tuple) 計(jì)算元組元素個(gè)數(shù)。 |
>>> tuple1 = ('Google', 'Runoob', 'Taobao')
>>> len(tuple1)
3
>>>
|
| 2 | max(tuple) 返回元組中元素最大值。 |
>>> tuple2 = ('5', '4', '8')
>>> max(tuple2)
'8'
>>>
|
| 3 | min(tuple) 返回元組中元素最小值。 |
>>> tuple2 = ('5', '4', '8')
>>> min(tuple2)
'4'
>>>
|
| 4 | tuple(iterable) 將可迭代系列轉(zhuǎn)換為元組。 |
>>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
>>> tuple1=tuple(list1)
>>> tuple1
('Google', 'Taobao', 'Runoob', 'Baidu')
|
關(guān)于元組是不可變的
所謂元組的不可變指的是元組所指向的內(nèi)存中的內(nèi)容不可變。
>>> tup
=
(
'r'
,
'u'
,
'n'
,
'o'
,
'o'
,
'b'
)
>>> tup
[
0
]
=
'g'
# 不支持修改元素
Traceback
(most recent call last
):
File
"
, line
1
,
in
TypeError:
'tuple'
object does
not support item assignment
>>>
id
(tup
)
# 查看內(nèi)存地址
4440687904
>>> tup
=
(
1
,
2
,
3
)
>>>
id
(tup
)
4441088800
# 內(nèi)存地址不一樣了
從以上實(shí)例可以看出,重新賦值的元組 tup,綁定到新的對象了,不是修改了原來的對象。
新聞標(biāo)題:Python3元組
URL標(biāo)題:http://www.dlmjj.cn/article/dpspspp.html


咨詢
建站咨詢
