初識python

來源:互聯網
上載者:User

標籤:

     之前一直在學習MATLAB,最近想想好好學學Python,Python和MATLAB一樣,是動態語言,定義變數不用像C,java一樣定義類型,更為靈活,因此就很有親切感,之前看的一些資料記錄的一些東西~

########

Python的變數名必須是大小寫英文和數位組合,不能以數字開頭。

逸出字元,可以用\,除此之外,還有一種方式就是直接在一行或多行字串之前加上r’’’…’’’。

Unicode字串,表示的字串用u’…’表示。如果中文字元在Python環境中遇到 UnicodeDecodeError,是因為.py檔案儲存的問題,可在第一行加上# -*- coding: utf-8 -*- 

因為Python把0Null 字元串‘‘None看成 False,其他數值和非Null 字元串都看成 True,所以:

True and ‘a=T‘ 計算結果是 ‘a=T‘
繼續計算 ‘a=T‘ or ‘a=F‘ 計算結果還是 ‘a=T‘

短路計算

1. 在計算 a and b 時,如果 a 是 False,則根據與運演算法則,整個結果必定為 False,因此返回 a;如果 a 是 True,則整個計算結果必定取決與 b,因此返回 b。

2. 在計算 a or b 時,如果 a 是 True,則根據或運演算法則,整個計算結果必定為 True,因此返回 a;如果 a 是 False,則整個計算結果必定取決於 b,因此返回 b。

所以Python解譯器在做布爾運算時,只要能提前確定計算結果,它就不會往後算了,直接返回結果。

建立list,list是一種有序的集合,可以隨時的添加和刪除其中的元素。

很重要的一點就是字串的一定要加引號。

按照索引可以訪問list,但是注意不可以越界,在我個人看來,list和數組真的超級像,特別好用的一點是排序的時候倒序排列可以直接用符號,要注意的一點是不能越界。

添加新元素用append()方法,把新元素追加到list的末尾。

insert()可以將一個新元素添加到特定的位置。

其中每一行輸入完成之後可以不加分號。

List中刪除元素可以採用pop()方法,執行L.pop()刪除list的最後一個元素,如果是特定位置的話可以採用pop(2),2表示的是位置。

替換很簡單,直接索引就可以。

 

Tuple是另外一種有序的列表,建立之後就不能再修改,與list的建立方式不同,tuple採用的是()替代[].

如果在tuple的元素中加一個list,則就可以對其進行修改了。

 

Python中的if語句輸入之後,需要在後面輸一個:,才能輸出。

if…elif...else語句

for迴圈:

L = [‘Adam‘, ‘Lisa‘, ‘Bart‘]
for name in L:
print name
 

while迴圈

N = 10
x = 0
while x < N:
    print x
    x = x + 1

break迴圈

continue

 

多重迴圈

for x in [‘A‘, ‘B‘, ‘C‘]:
    for y in [‘1‘, ‘2‘, ‘3‘]:
        print x + y

 

 

dict

我們把名字稱為key,對應的成績稱為value,dict就是通過 key 來尋找 value

就是在對應關係中應用比較好。

Len()函數可以計算出任意集合的大小,dict是一個集合,所以可以用來計算集合。

可以通過d[key]的方式訪問dict

>>> print d.get(‘Bart‘)
59
>>> print d.get(‘Paul‘)
None

注意在之前的索引當中,key需要在[]中。

Dict的第一個特點是尋找速度快,而且尋找的速度與元素的個數無關,而list的尋找速度是隨著元素的增加而逐漸下降的;第二個特點是儲存的key-value序對是沒有順序的;第三個特點是作為key得到元素是不可變的,所以list不能作為key。

Dict的缺點是佔用記憶體大,還會浪費很多內容。

同時,還可以對dict進行更新,可以直接插入,也可以進行替換。

遍曆dict,通過for迴圈實現:

for key in d:

print key + ‘:’,d[key]

 

set

dict是建立了一系列的映射關係,而set是建立一系列無序的,不重複的元素。

建立set的方式是調用set()並傳入一個list,list的元素將作為set的元素。

Set是一個無序集合,不能使用索引來訪問,可以直接用判斷語句來進行判斷。

對啊,由於set和dict的元素不可變性,所以可以用if語句判斷使用者的輸入是否有效。

遍曆set的方法和其它的一樣,直接用for 。。。in。。。就ok

更新set,對於set,更新就是把新的元素添加到set中,採用add(),二是把已有的元素從set中刪除,採用remove().

 

除此之外,Python內建了很多函數,可以直接調用,比如計算圓面積。

要調用一個函數,需要知道函數的名稱和參數,可以直接從Python的官方網站查看文檔:
http://docs.python.org/2/library/functions.html#abs

也可以在互動命令列中直接通過help()進行尋找協助資訊。

當然,同其它語言一樣,Python還可以自己編寫函數,這裡要使用到def語句,依次寫出函數名、括弧、括弧中的參數和冒號。在函數語句的最後,一定是需要return的。

函數可以返回多值,但其的本質是返回一個tuple。

 

遞迴函式

一個函數在內部調用自己本身。

在使用遞迴函式的時候需要注意防止棧溢出。遞迴調用的次數過多,會導致棧溢出。

 

看完之後真真是覺得很亂啊,雖然對於文本一直強迫自己改的規範一點,但是真的太晚了,明天再改改,繼續學啦~

未完待續...

00:45:14

 

初識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.