python 列表,字典,元組,字串,常用函數

來源:互聯網
上載者:User

標籤:sdi   不可   tool   abs   返回   十六進位   char   分割   格式   

飛機票一.列表方法

1.ls.extend(object)

向列表ls中插入object中的每個元素,object可以是字串,元組和列表(字串“abc”中包含3個元組),相當於ls和object合并。注意:object如果是整型,必須以列表的方式傳入,不可以以整型或元組的方式傳入

2.ls.append(object)

將object作為一個整體插入到ls最後,object可以是字串,元組,列表和字典

3.ls.insert(index, object)

將object作為一個整體插入到ls指定的索引位置,object可以是字串,元組,列表和字典

4.ls.pop([index])

刪除指定索引位置的元素,返回被刪除的元素,如果參數為空白,則預設刪除最後一個索引位置的元素。注意:有傳回值

5.ls.remove(value)

刪除指定的元素。注意:value是序列裡面的值,不是索引

6.ls.reverse()

將列表中元素進行逆向排列

7.ls.sort(cmp=None, key=None, reverse=False)

預設將列表中元素進行升序排列,可以通過reverse參數將升序設為降序 

 

二.列表,元組公用的方法

1.ls.count(value)

統計列表中元素value的個數

2.ls.index(value, [start, [stop]])

返回列表中指定元素所在的索引位置,可以通過start和stop參數設定搜尋範圍。注意:如果不存在則會報出異常

 

三.字典方法

1.dic.clear()

刪除字典中所有項

2.dic.fromkeys(S[,v])

建立字典,鍵為S,值為v,如果S為長字串,返回的鍵為字串中的每一個字元,值將重複。注意:dic字典中的項不會改變

3.dic.get(k[,d])

擷取字典中指定鍵的值,如果k不屬於字典中的鍵,則返回None。注意:相當於dic[k],但是dic[k]如果k不屬於字典中的鍵,則報出異常

4.dic.setdefault(k[,d])

類似於dit.get(k,d)方法,如果k屬於字典中的鍵,則返回對應的值,否則,將往字典中插入索引值

5.dic.has_key(k)

返回字典中是否包含鍵k,傳回值為True和False

6.dic.items()

以列表的形式返回字典中的索引值,每一對索引值存放在元組中

7.dic.keys()

以列表的形式返回字典所有鍵

8.dic.values()

以列表的形式返回字典中所有值(values)

9.dic.iteritems()

索引值迭代器,一般用於for迴圈

10.dic.iterkeys()

鍵迭代器,一般用於for迴圈

11.dic.itervaleus()

值迭代器,一般用於for迴圈

12.dic.viewitems()

返回字典中索引值的視圖,單個索引值對存放在元組中,所有索引值對存放在列表中,傳回型別為dict_items,也可以作為迭代用於for迴圈

13.dic.viewkeys()

返回字典中鍵的視圖,單個鍵存放在元組中,所有鍵存放在列表中,傳回型別為dict_items,也可以作為迭代用於for迴圈

14.dic.viewvalues()

返回字典中值的視圖,單個值存放在元組中,所有值存放在列表中,傳回型別為dict_items,也可以作為迭代用於for迴圈

15.dic.pop(k[,d])

刪除字典中指定鍵的值,並返回被刪除鍵的對應值

16.dic.popitem()

隨機刪除某個索引值對,並返回被刪除鍵的對應值,無需往方法中傳入參數

17.dic.update([E, ]**F)

將字典E中的索引值對更新到dic中,相當於列表dic和列表E 合并後更新到列表dic中

18.dic.copy()

淺複製:只複製字典中的父物件,對子物件採取引用的辦法。改變子物件的內容會影響到複製和被複製的字典。

例:

1 a ={‘name‘:‘ali‘,‘age‘:20,‘score‘:[10,20,30]}2     b = a.copy()3     b[‘name‘] = ‘bai‘4     b[‘score‘].remove(20)5     print b6     print a

輸出結果:

{‘age‘: 20, ‘score‘: [10, 30], ‘name‘: ‘bai‘}{‘age‘: 20, ‘score‘: [10, 30], ‘name‘: ‘ali‘}

 

四.字串方法#字母處理

1.string.capitalize()

返回元字串,且將字串第一個字母轉為大寫,其它字母小寫

2.string.title()

返回元字串,且將字串第一個字母轉為大寫,其它字母小寫

3.string.swapcase()

用於對字串的大小寫字母進行轉換,小寫字元轉為大寫,大寫字母轉為小寫

4.string.upper()

將字串全部轉為大寫

5.string.lower()

將字串全部轉為小寫

#去除空格或者指定字串

1.string.strip([string])

去除字串中首尾的字串,不帶參數預設去除空格

2.string.lstrip([string])

去除字串左邊字串,不帶參數預設去除空格

3.string.rstrip([string])

去除字串右邊字串,不帶參數預設去除空格

#格式化對齊

1.string.center(width[, fillchar])

返回一個原字串置中對齊,width為總長度,兩邊用一個字元fillchar填充,如果指定的長度小於原字串的長度則返回原字串。注意:如果fillchar超過1個長度或為非字串或為漢字,則會報出異常

2.string.ljust(width[, fillchar])

返回原字串靠左對齊,並使用空格填充至指定長度的新字串,如果指定的長度小於原字串的長度則返回原字串。注意:如果fillchar超過1個長度或為非字串或為漢字,則會報出異常

3.string.rjust(width[, fillchar])

返回原字串靠右對齊,並使用空格填充至指定長度的新字串,如果指定的長度小於字串的長度則返回原字串。注意:如果fillchar超過1個長度或為非字串或為漢字,則會報出異常

4.string.zfill()

返回指定長度的字串,原字串靠右對齊,前面填充0

#替換

1.string.replace(old, new[, count])

用新的字元替換老字元,還可以指定替換的個數,預設全部替換

2.string.expandtabs([n])

將字串中(tab符號)\t轉換成n個空格

#字串搜尋

1.string.find(sub [,start [,end]])

返回sub字串第一次出現的索引位置,可以通過start和stop參數設定搜尋範圍,如果未找到sub時返回-1

2.string.rfind(sub [,start [,end]])

返回sub字串最後一次出現的索引位置,如果沒有匹配項則返回-1,可以通過start和stop參數設定搜尋範圍

3.string.index(sub [,start [,end]])

類似於string.find()方法。注意:未找到sub時會報出異常

4.string.rindex(sub [,start [,end]])

類似於string.rfind()方法。注意:未找到sub時會報出異常

#字串分割

1.string.split([sep [,maxsplit]])

用來根據指定的分隔字元將字串進行分割,不包含分隔字元,結果存為列表,不指定sep時,預設將將空格作為分隔字元

2.string.partition(sep)

用來根據指定的分隔字元將字串進行分割,分割點為首次出現sep的地方,且包含分隔字元,結果存為元組,且固定為3個元素,如果sep不存在字串中,則後面2個元素為空白

3.string.rpartiton()

用來根據指定的分隔字元將字串進行分割,分割點為最後一次出現sep的地方,且包含分隔字元,結果存為元組,且固定為3個元素,如果sep不存在字串中,則前面2個元素為空白

#字串判斷

1.string.isupper()

返回字串中是否全為大寫 --> True/False

2.string.islower()

返回字串中是否全為小寫 --> True/False

3.string.isdigit()

返回字串中是否只包含數字 --> True/False

4.string.isalpha()

返回字串中是否只包含字母 --> True/False

5.string.isalnum()

返回字串中是否只包含字母或數字 --> True/False

6.string.isspace()

返回字串中是否只包含空格(tab也算空格) --> True/False

7.string.istitle()

返回字串中首字母是否大寫 --> True/False

8.string.startswith(prefix[, start[, end]])

返回字串是否以某字串開始,可以通過start和stop參數設定搜尋範圍

9.string.endswith(suffix[, start[, end]])

返回字串是否以某個字串結束 可以通過start和stop參數設定搜尋範圍

#其它

1.string.count(sub[, start[, end]])

計數字串中某子集的數量,可以通過start和stop參數設定搜尋範圍

2.len(string)

擷取字串的長度

3.list(string)

字串轉列表

4.string.join(iterable)

列錶轉字串,用於將序列中的元素以指定的字元string串連產生一個新的字串。注意:iterable只能是字串類型,否則會報出異常

5.string.encode(encoding=‘UTF-8‘,errors=‘strict‘)

以 encoding 指定的編碼格式編碼字串

6.string.decode(encoding=‘UTF-8‘,errors=‘strict‘)

解碼字串,出錯預設報ValueError,除非errors是ignore或replace

7.string.translate(table [,deletechars])

根據參數table給出的表(包含 256 個字元)轉換字串的字元, 要過濾掉的字元放到deletechars參數中

例:

1 #!/usr/bin/python2 #coding:utf83 import string4 intab = "abcd"5 outtab = "1234"6 tab = string.maketrans(intab,outtab)7 strs = "abcd####abcdefg"8 print strs.translate(tab)9 print strs.translate(tab,‘ab‘)

輸出結果:

1234####1234efg34####34efg

8.string.format(*args, **kwargs)

  它通過{}和:來代替%

  “映射”樣本:

通過位置

1 print ‘{0}#{1}‘.format(‘YYY‘,10)2 print (‘{}‘+‘#‘+‘{}‘).format(‘YYY‘,‘NNN‘)3 print ‘{1}#{0}#{1}‘.format(‘YYY‘,‘NNN‘)

輸出結果:

YYY#10YYY#NNNNNN#YYY#NNN

通過關鍵字參數

1 str1 =‘{name}‘+‘ is ‘+‘{age}‘2 print str1.format(name=‘ali‘,age=20)

輸出結果:

ali is 20

通過對象屬性

1 class students():2     def __init__(self,name,age):3         self.name,self.age = name,age4 5     def __str__(self):6         str1 = ‘{self.name}‘+‘ is ‘+‘{self.age}‘7         return str1.format(self=self)8 9 print str(students("ali",20))

輸出結果:

ali is 20

通過下標

1 name = [‘ali‘,‘baidu‘]2 age = [10,20]3 str1 = ‘{0[0]},{0[1]}‘+‘ are ‘+‘{1[0]},{1[1]}‘4 print str1.format(name,age)

輸出結果:

ali,baidare 10,20

   有了這些便捷的“映射”方式,我們就有了偷懶利器。基本的python知識告訴我們,list和tuple可以通過“打散”成普通參數給函數,而dict可以打散成關鍵字參數給函數(通過和*)。所以可以輕鬆的傳個list/tuple/dict給format函數。非常靈活。

格式限定符

   它有著豐富的的“格式限定符”(文法是{}中帶:號)

   比如:填充與對齊

   填充常跟對齊一起使用
   ^、<、>分別是置中、靠左對齊、靠右對齊,後面頻寬度
   :號後面帶填充的字元,只能是一個字元,不指定的話預設是用空格填充,效果相當於字串函數center,ljust和rjust。

例:

1 print ‘{:a^10}‘.format(‘123‘)2 print ‘123‘.center(10,‘a‘)3 print ‘{:a<10}‘.format(‘123‘)4 print ‘123‘.ljust(10,‘a‘)5 print ‘{:a>10}‘.format(‘123‘)6 print ‘123‘.rjust(10,‘a‘)

輸出結果:

aaa123aaaaaaa123aaaa123aaaaaaa123aaaaaaaaaaaaaa123aaaaaaa123

精度與類型

   精度常跟類型f一起使用

1 print ‘{:.2f}‘.format(123.456)

輸出結果:

123.46

其中.2表示長度為2的精度,f表示float類型。

分隔字元用,號還能用來做金額的千位分隔字元。

1 print ‘{:,}‘.format(123456789)

輸出結果:

123,456,789

其他類型

主要就是進位了b、d、o、x分別是二進位、十進位、八進位、十六進位。

1 print ‘{:b}‘.format(17)2 print ‘{:d}‘.format(17)3 print ‘{:o}‘.format(17)4 print ‘{:x}‘.format(17)

輸出結果:

10001172111

python 列表,字典,元組,字串,常用函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.