Python - Learn Note (2)

來源:互聯網
上載者:User

標籤:而且   大小   速度   其他   產生   編寫   方法   浮點數   print   

Python基礎資料型別 (Elementary Data Type)

整數、浮點數(浮點數也就是小數,之所以稱為浮點數,是因為按照科學記號標記法表示時,一個浮點數的小數點位置是可變的)、字串(字串是以‘‘""括起來的任意文本)、布爾值、空值(空值是Python裡一個特殊的值,用None表示)

print語句

print語句也可以跟上多個字串,用逗號“,”隔開,就可以連成一串輸出,遇到逗號“,”會輸出一個空格;使用“+”拼接不會產生空格

Python注釋

Python的注釋以#開頭,後面的文字直到行尾都算注釋

Python變數

變數是用一個變數名表示,變數名必須是大小寫英文、數字和底線(_)的組合,且不能用數字開頭;

在Python中,等號=是指派陳述式,可以把任意資料類型賦值給變數,同一個變數可以反覆賦值,而且可以是不同類型的變數;這種變數本身類型不固定的語言稱之為動態語言;

樣本  a = 123     # a是整數    
     a = ‘imooc‘   # a變為字串
Python中raw字串與多行字串

在字串前面加個首碼 r ,表示這是一個 raw 字串,裡面的字元就不需要轉義了。

但是r‘...‘標記法不能表示多行字串,也不能表示包含"的字串

多行字串,可以用‘‘‘...‘‘‘表示:

‘‘‘Line 1
Line 2
Line 3‘‘‘

在多行字串前面添加 r ,把這個多行字串也變成一個raw字串

Python中Unicode字串
字串的編碼問題:因為電腦只能處理數字,如果要處理文本,就必須先把文本轉換為數字才能處理(位元組編碼錶)。
以Unicode表示的字串用u‘...‘表示,比如:print u‘中文‘

   Unicode字串除了多了一個 u 之外,與一般字元串沒啥區別,逸出字元、raw字串和多行標記法仍然有效;

如果中文字串在Python環境下遇到 UnicodeDecodeError,這是因為.py檔案儲存的格式有問題。可以在第一行添加註釋 # -*- coding: utf-8 -*-

   目的是告訴Python解譯器,用UTF-8編碼讀取原始碼。

Python中布爾類型

      布爾類型運算:與運算(and:只有兩個布爾值都為 True 時,計算結果才為 True。

              或運算(or):只要有一個布爾值為 True,計算結果就是 True。

              非運算(not:把True變為False,或者把False變為True。

    布爾類型還可以與其他資料類型做 and、or和not運算,Python把0Null 字元串‘‘None看成 False,其他數值和非Null 字元串都看成True;

    and or 運算的一條重要法則:短路計算

  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對象。
由於Python是動態語言,所以list中包含的元素並不要求都必須是同一種資料類型,我們完全可以在list中包含各種資料:L = [‘Michael‘, 100, True]
通過索引來擷取list中的指定元素。如:L[0]
倒序索引: 我們可以用 -1 這個索引來表示最後一個元素:L[-1]

   添加新的元素: 第一個辦法是用 list 的 append() 方法,把新同學追加到 list 的末尾;

                          第二個方法是用list的 insert()方法,它接受兩個參數,第一個參數是索引號,第二個參數是待添加的新元素;

   pop()方法刪掉list的最後一個元素,pop(index)方法刪掉list中指定索引的元素,並且它還返回這個元素;

   對list中的某一個索引賦值,就可以直接用新的元素替換掉原來的元素,list包含的元素個數保持不變。

Python元組:tuple

  tuple是另一種有序的列表。tuple和list非常類似,但是,tuple一旦建立完畢,就不能修改。

   建立tuple和建立list唯一不同之處是用( )替代了[ ]

定義單元素的tuple: 單元素tuple要多加一個逗號“,”,避免歧義; 
t = (1,) 在列印單元素tuple時,也自動添加了一個“,”,為了更明確地告訴你這是一個tuple。多元素 tuple 加不加這個額外的“,”效果是一樣的:

   tuple所謂的不變是說,tuple的每個元素,指向永遠不變。即指向‘a‘,就不能改成指向‘b‘,指向一個list,就不能改成指向其他對象,但指向的這個list本身是可變的!

Python之條件判斷

  if 語句後接運算式,然後用:表示代碼塊開始。

  if ... else ... 語句,else 後面有個“:”

  if ... 多個elif ... else ... 的結構,一次寫完所有的規則;

Python之迴圈

  for 迴圈就可以依次把list或tuple的每個元素迭代出來:

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

while 迴圈,while 迴圈不會迭代 list 或 tuple 的元素,而是根據運算式判斷迴圈是否結束。

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

break語句退出迴圈

continue跳過後續迴圈代碼,繼續下一次迴圈。

Python之dict

花括弧 {} 表示這是一個dict,然後按照 key: value, 寫出來即可。最後一個 key: value 的逗號可以省略。使用 d[key] 的形式來尋找對應的 value;

判斷key是否存在:用 in 操作符    ‘Paul‘ in d

   使用dict本身提供的一個get 方法,在Key不存在的時候,返回None  

   dict的第一個特點是尋找速度快,無論dict10個元素還是10萬個元素,尋找速度都一樣。而list的尋找速度隨著元素增加而逐漸下降。缺點是佔用記憶體大,還會浪費很多內容

   dict的第二個特點就是儲存的key-value序對是沒有順序的;

   dict的第三個特點是作為 key 的元素必須不可變,Python的基本類型如字串、整數、浮

   點數都是不可變的,都可以作為 key。但是list是可變的,就不能作為 key。

Python集合之set

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

s = set([‘A‘, ‘B‘, ‘C‘])

set內部儲存的元素是無序的。set不能包含重複的元素,會自動去掉重複的元素;

訪問 set中的某個元素實際上就是判斷一個元素是否在set中。(用in操作符判斷);

添加元素時,用set的add()方法:如果添加的元素已經存在於set中,add()不會報錯;

刪除set中的元素時,用set的remove()方法,如果元素不存在set中,remove()會報錯;

Python之函數

定義一個函數要使用 def 語句,依次寫出函數名、括弧、括弧中的參數和冒號:,然後,在縮排塊中編寫函數體,函數的傳回值用 return 語句返回。return None可以簡寫為return。

Python的函數返回多值其實就是返回一個tuple在文法上,返回一個tuple可以省略括弧;

讓一個函數能接受任意個參數,我們就可以定義一個可變參數:可變參數的名字前面有個 號,我們可以傳入0個、1個或多個參數給可變參數:def fn(*args):

 

Python - Learn Note (2)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.