【python】python學習筆記

來源:互聯網
上載者:User

標籤:python

List:列表

1)列表運算式:有時可以很方便的代替函數實現一些功能

1.1)字串置中(長度為9個字元)>>> a = ["123","456","abc","Abc","AAA"]>>> [k.center(9) for k in a][‘   123   ‘, ‘   456   ‘, ‘   abc   ‘, ‘   Abc   ‘, ‘   AAA   ‘]1.2)得到a中僅有字母組成的字串,將其變為大寫>>> [k.upper() for k in a if k.isalpha()][‘ABC‘, ‘ABC‘, ‘AAA‘]

2)常用操作方法

增加元素a.append(1)  在列表最後插入資料1a.insert(0,1)  索引0處插入資料1a.extend(b)  在列表a中追加列表b刪除元素a.pop()  刪除最後一個元素,並返回其值a.remove("a")  刪除元素a,從左至右依次刪除,無傳回值其他方法a.reverse()  將列表a反序a.count(3)  元素3出現的次數a.index(3)  元素3在列表中的索引str.replace(sub, new_sub)  用一個新的字串new_sub替換str中的sub

Str:字串

1)判斷字串類別的常用方法:滿足返回True

str.isalnum()  所有字元為數字0-9或者A-Z或者a-zstr.isalpha()  所有字元為字母a-z或者A-Zstr.isdigit()  所有字元為數字0-9str.islower()  所有字元為小寫字母str.isupper()  所有字元為大寫字母str.istitle()  首字母大寫str.isspace()  所有字元為空白字元

2)在字串中尋找子串

2.1)finds.find(substring,[start,[end]])  如果找到,返回索引;找不到返回-12.2)遍曆字串for (index,char) in enumerate(S):  enumerate()在每次迴圈中,返回的是一個包含兩個 元素的定值表(tuple),兩個元素分別賦予index和char

3)格式化

s.ljust(width)  靠左對齊;如果s長度小於width;那麼後面補空格s.rjust(width)  靠右對齊s.center(width) 置中s.strip() s.lstrip() s.rstrip()  去掉空格s.split()  分割字串(預設為空白格),返回list結果"\n".join([1,2,3])  以\n串連[1,2,3];字串串連還可以使用+

tuple:常量list

Dict:字典

1)常見操作

a.clear()  清空字典a.copy()  拷貝字典:1> b=a.copy(),此時b時獨立的,改變b不會影響a;2>b=a,此時b指向a的記憶體空間值,因此修改b會影響aa.get(key)  若key存在,則返回a[key];否則,返回Nonea.get(key,default) 和上面不同的是,若key不存在,返回defaulta.has_key(key)  判斷字典中是否存在key;等於key in a.keys()遍曆字典dic.keys()、dic.values()、dic.items()  擷取所有鍵、所有值、所有元素(索引值對)

函數

1)傳參類型:傳的是name(命名空間)指向記憶體位址中的值

位置傳參;包裹傳遞(*args/**args);關鍵字傳參傳參的規則:先位置,再關鍵字,再包裹位置,再包裹關鍵字

2)不可變對象傳參、可變對象傳參

 對象:分為不可變對象(int/tuple/string等)和可變對象(list/dict等)

 a = 1 def change_integer(a):    a = a + 1    return a print change_integer(a) print a>>>輸出2 1  不可變對象傳參:基礎資料型別 (Elementary Data Type)的變數,變數傳遞給函數後,函數會在記憶體中複製一個新的變數,從而不影響原來的變數 b = [1,2,3] def change_list(b):    b[0] = b[0] + 1    return b print change_list(b) print b   >>>輸出 [2,2,3] [2,2,3]  可變對象傳參;表來說,表傳遞給函數的是一個指標,指標指向 序列在記憶體中的位置,在函數中對錶的操作將在原有記憶體中進行,從而影響原有變數

3)常見函數

lambda函數 func = lambda x,y: x + y print func(3,4)  高階函數:函數作為參數傳遞 def test(f, a, b):    print ‘test‘    print f(a, b) test((lambda x,y: x**2 + y), 3, 5)  map函數:依次將函數對象作用於表中元素,第一個參數為函數 re = map((lambda x: x+3),[1,3,5,6]) re = map((lambda x,y: x+y),[1,2,3],[6,7,9])  filter函數:過濾;如果函數對象返回的是True,則該次的元素被儲存於返回的表中 def func(a):         if a > 100:                 return True         else:                 return False          print filter(func,[10,56,101,500])  reduce:依次疊加進行操作;第一個函數必須要有2個參數 print reduce((lambda x,y: x+y),[1,2,5,7,9])


本文出自 “孔小發愛吃魚” 部落格,謝絕轉載!

【python】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.