Python學習 4 元組

2021-09-20 17:48:34 字數 3424 閱讀 5579

1.在python中有元組,列表,字串三種序列

在上一節我們介紹了字串這種序列,下面我們介紹下有關序列的操作,注意這是序列的有關操作,也就是說元組,列表,字串都具有以下操作.

[python]view plaincopy

str1='abcde'

str2='12345'

print(len(str1))#求序列長度:

print(str1+str2)#連線兩個序列

print(str1*5)#重複序列元素

print('a'

in str1) #判斷元素是否在序列中

print(max(str1))   #求序列中的最大值

print(min("5638974561"))#求序列中的最小值  

列印結果如下:

通過注釋可以知道函式len(),+,*,in,min(),max()的功能,這裡強調一下函式max(),min(),在求字串中的最大值和最小值,都是按照ascii碼值的大小來比較的,也就是說max()函式返回的是ascii碼最大的值,同理min()函式在返回的是字串中ascii碼值最小的字元。in函式則是判斷元素是否在序列中,返回的是乙個布林值,+是把兩個字串連線起來,*是乙個序列和乙個數字相乘,數字為序列重複的次數。

2.在python2.4中關於序列的比較有cmp()這個函式,但是在python3.0中已經不用這個函式了,python3.0使用的是operator這個類,operator為我們提供了很多方法來比較兩個序列的大小,**如下:

[python]view plaincopy

a='12'

b='15'

print(operator.eq(a, b))#等價於a==b

print(operator.eq(a, b))#等價於a==b

print(operator.lt(a, b))#等價於aprint(operator.le(a, b))#等價於a<=b

print(operator.ne(a, b))#等價於a!=b

print(operator.ge(a, b))#等價於a>=b

print(operator.gt(a, b))#等價於a>b

列印結果如下:

如**注釋所示,operator為我們提供了很多比較兩個序列的方法,如:operator.eq()比較兩個序列是否相等,等等。熟練的運用這些方法不僅使**變得簡潔,而且能夠更快的實現演算法思想,使問題的中心放在演算法思想上。

3.元組

首先,我們介紹下元組的來由,在字串中,我們只可以訪問字元資料,那麼如果我們想訪問的資料不僅僅限於字元,還有數字怎麼辦呢?這裡就需要用到了元組.**如下:

[python]view plaincopy

str2='zhangsan 12 man'

print(str2[:8])

str3='lisi 12 man'

print(str3[:8])

列印結果:

str2='zhangsan12 man',列印名字str2[:8]='zhangsan';str3='lisi 12 man'列印名字str3[:8]

='lisi 12';顯然結果是不對的,正確的名字應該是'lisi',如果把str3[:8]改為str3[:4]來讀取名字,

對於大量的資料處理不具有通用性,非常的不方便.而如果用元組就方便多了,**如下:

[python]view plaincopy

t1=('zhangsan',12,'man')

print(t1[0])

print(t1[1])

print(t1[2])

通過**可以看到t1為乙個元組,而t1=('zhangsan',12,'man'),就是定義了乙個元組,t1有

3個元素,t[0]='zhangsan'為字串,t[1]=12為整型,t[2]='man'為字串,可以看出元組可以

儲存不同型別的資料,而且對於我們訪問具有特定意義的資料非常方便有用.

列印結果如下:

4.元組定義的注意事項:

當定義只有乙個元素的元組時,這個元素的後面必須加上乙個逗號,通過**我們來解釋下

原因。**如下:

[python]view plaincopy

t2=()

t3=(1,)

t4=(1)

print(type(t2))

print(type(t3))

print(type(t4))

列印結果如下:

通過type()函式列印資料型別,可以看出t2是乙個元組,只不過t2是乙個空元組,t3是一

個只有乙個元素的元組,t4=(1)則是乙個int整型數字,這說明定義乙個只有乙個元素的元組

應該在元素後加乙個逗號,如:t3=(1,);否則python會預設他為乙個基本的資料型別如:t4=(1).

5.用元組為變數賦值

在為定義變數賦值時,可以使用元組來賦值。**如下:

[python]view plaincopy

t1=('zhangsan',12,'man')

name,age,gender=t1

print(name)

print(age)

print(gender)

列印結果如下:

從**可以看出,用元組為定義的變數賦值時,name=t1[0],age=t1[1],gender=t1[2],

也就是說元組會按照下標順序,依次把值順序地賦給變數。

當然元組為變數賦值時,也可以按照下面的格式賦值,如:

name,age,gender=('zhangsan',12,'man')

name,age,gender='zhangsan',12,'man'

這兩種賦值方法和程式中的賦值方法結果是一樣的,但是最好使用前兩種規範的方法

,不要使用第三種不規範的賦值方式,這樣**的可讀性會更強.

Python學習 4 元組

1.在python中有元組,列表,字串三種序列 在上一節我們介紹了字串這種序列,下面我們介紹下有關序列的操作,注意這是序列的有關操作,也就是說元組,列表,字串都具有以下操作.str1 abcde str2 12345 print len str1 求序列長度 print str1 str2 連線兩個...

Python學習之 4 元組

元組的建立 python3 中元組按照以下方式建立 tuple1 python is a glue language 也可以採用tuple函式乙個列表轉化為乙個元組 list1 this is a list list2tuple tuple list1 list2tuple this is a li...

python學習 12 元組

元組常用操作 迴圈遍歷 應用場景 元組和列表之間的轉換 用於儲存一串 資訊,資料之間使用,分隔 元組用 定義 元組的索引從0開始 info tuple zhangsan 18 1.75 info tuple 元組中只包含乙個元素時,需要在元素後面新增逗號 info tuple 50 info.cou...