1. 程式人生 > >python3基礎01

python3基礎01

<< python 基礎 >> day01 筆記   python簡介     建立人: Guido Van Rossum(荷蘭人)     時  間: 1989年建立 python

  python的應用領域     系統運維     網路程式設計     科學計算     人工智慧,機器人     web開發     雲端計算     大資料及資料庫程式設計    教育     遊戲,影象     其它      python的優缺點:     優點:       面向物件(Java, C++, Python)       免費       可移植       可混合程式設計(C/C++/Java/.net)       簡單易學易用       開發效率高       應用領域廣泛       開源     缺點:       與C/C++相比,執行速度不夠快       不能封閉原始碼

  python的官網     https://www.python.org

  python的安裝     相容的作業系統 :        Windows        Linux/ UNIX        Mac OS X        ...

  python的執行:     python 的解釋執行器的型別:       CPython     (C語言開發)       Jython      (Java開發)       IronPython  (.net開發)    第一個python程式:   開啟sublime text 3 編寫 hello.py     內容裡寫 :        print("hello world!")   執行hello.py      # python3 hello.py

常用的程式檔案的字尾:   .py   python 檔案字尾   .c    C語言檔案字尾   .cpp  C++語言檔案字尾   .java Java語言檔案字尾

python的互動模式下編寫並執行程式碼:   進入python互動環境     # python3 <回車>   退出 python3互動提示模式     >>> quit() <回車>     >>> exit()  <回車>     輸入: ctrl + d (輸入檔案結束符)    python的註釋   python註釋是以 # 開頭,直至行尾   作用:     讓註釋內容不參加解釋執行   sublime text 3 的註釋快捷鍵 ctrl + /    python的程式組成   程式由模組組成   模組由語句,函式,類等組成   語句包含表示式    表示式建立並處理資料物件

python 的核心資料型別   數字(整型,浮點型,複數,布林型)   字串 str   列表 list   ...

數字   整型數 int     整型數是不帶有小數部分的資料,包括自然數,0,負數       如: -5, 0, 100等   整型字面值的表示方式     十進位制表示       10       200       -100       999999999999999999999999999999     八進位制方式表示(0o開頭,後跟0~7)       0o11  (9)       0o177 (127)     十六進位制表示(0x開頭,後跟0~9,A-F或 a-f)       注:a表示10, b表示11, ... f表示15       0x11  (17)       0xFF  (255)       0x1234abcd     十進位制的表示(ob開頭,後跟0~1)       0b111   (7)       0b1000  (8)

練習:   計算0xFFFF 表示多少?  # 65535   計算0xFFFFFFFF 表示多少?  # 4294967295   計算 0b1001 表示多少?  # 9   計算 0o71   表示多少?  # 57

  試著把 9轉為 二進位制表示  # 1001      把 64轉為 八進位制表示  # 100      把 18轉為 十六進位制表示 # 12

浮點型數 float   浮點型數是帶有小數部分的數字(小數部分可以是0)

  浮點型數的兩種表示方式:     小數形式       3.14   3.1    3.0   3.   0.14   .14     科學計數法       格式:         小數e/E(正負號)指數       如:         6.18E-1  (等同於 0.618)         2.9979e8  # 等同於 299790000.0

複數 complex   分為兩部分:     實部(real)     虛部(image)     注:虛部是以j或J結尾的   複數的字面值表示     1j     (2J)     1+1J     1-1j     (-100+100J)

布林型數 bool   用來表示真和假兩種狀態的型別     True 表示真(條件滿足可成立)     False  表示假(條件不滿足或不成立)   說明:     True 的值是1     False 的值是0

空值 None   None 是一個表示不存在的特殊物件   作用:     用來佔位     變數解除繫結

   表示式和運算子 表示式 expression   由一個數字或數字和運算子組成

  作用:     通常讓計算機做一些事情並返回結果   如:     1 + 2 * 3 - 4

算術運算子:   +   加法   -   減法   *   乘法   /   除法   //  地板除 floordiv   %   求餘   **  冪運算

/ 除法   除法得到的數是浮點型數,不會丟棄小數部分   1 / 3  得 0.333333333333   8 / 2  得 4.0

// 地板除   除的結果去掉小數部分向下取整   7 / 3  得 2.3333333333   7 // 3 得 2   8 // 3 得 2   3.25 // 1.5 得 2.0

% 求餘   7 % 3      得 1   3.25 % 1.5 得 0.25

** 冪運算   格式:     x ** y       意為x的y次方   4 ** 2      得 16   3.0 ** 4.0  得 81.0   5.6 ** 1.418

運算子的優先順序   **   * / // %   + - 

示例:   1 + 3 * 3 ** 2 + 4 // 2   1 + 3 * 9 + 4 // 2   1 + 27 + 4 // 2   1 + 27 + 2   28 + 2   30

括號分組子表示式   用 () 可以將表示式分組,()內部的表示式先進行計算   (1 + 3) * 3 ** (2 + 4) // 2   4 * 3 ** (2 + 4) // 2   4 * 3 ** 6 // 2   4 * 729 // 2   2916 // 2   1458

練習:   用互動模式計算:      1) 一個商店西瓜7元一個,你帶20元錢能買幾個西瓜,找零多少?      2)一個學生的畢業薪資10000元,每年漲20%,十年後它的薪資是多少?

混合型別自動升級   1 + 2.14  返回型別為浮點型 3.14

基本輸出函式 print   格式:     print(要列印的東西)

練習:   1. 已知矩形的長邊長6cm,短邊長4cm,用表示式求周長和麵積      並打印出來

變數   什麼是變數     變數是關聯一個物件的識別符號     變數可以繫結一個物件,並可以通過變數名來使用這個物件

  識別符號的命名方法     識別符號必須為字母或下劃線開頭,後跟字母或下劃線或數字   說明     不能使用python的關鍵字作變數名     python變數名區分大小寫   合法的變數名示例     a a1 b bbb _a  __ABCD  var  a1b2   不合法的變數名示例:     1a  123  $ABC +a -b  @abc

  python 的關鍵字(共33個)     True, False, None, is, del, if, elif, else     ...       賦值語句  =   語法:     變數名 = 表示式     或     變數名1 = 變數名2 = 變數名3 = 表示式     或     變數名1, 變數名2, 變數名3, ...  = 序列   作用:     建立一個變數或修改一個變數的繫結的物件

  說明:     當變數不存在時,建立該變數,同時將變數繫結在這個物件上     當變數存在時,改變此變數繫結的物件     一個變數只能繫結一個物件     兩個變數可以同時繫結在同一個物件上    示例:  a=10    一個變數只能繫結一個物件  b=20  a=b      a繫結在b繫結的物件上  a與10解綁,繫結在20上  a=6  b=4  area=a*b      等同於area=6*4  x=y=z=1000     兩個變數可以同時繫結在同一物件上  x,y=300,400     x繫結300,y繫結400    

python 中自動化記憶體管理(重點)   a = 10000   b = 20000   a = a + b  # 發生了什麼事兒   c = a  # a和c同時繫結的3000這個物件上

python中 關聯/繫結/引用的含義   在python中,變數沒有型別   關聯/繫結/引用都是指一個變數和一個物件的關聯關係

練習:   1. 指定一個半徑為r = 3 釐米的圓     1) 計算圓的周長是多少釐米     2) 計算圓的面積是多少平方釐米

  2. 已知有兩個變數      a 繫結 10000      b 繫結 20000     問:       在不建立任何新物件的情況下,如何讓a和b交換繫結的物件     答案:       a = 10000       b = 20000       t = a  # 建立一個臨時變數來繫結10000       a = b       b = t       print("a=", a)  # 20000       print("b=", b)  # 10000       # 方法2       a = 10000       b = 20000       a, b = b, a   # 序列賦值       print("a=", a)  # 20000       print("b=", b)  # 10000

在互動模式下檢視當前作用域內的所有變數    >>> help("__main__")    退出鍵: q

   注:      help函式用來檢視幫助或執行時資訊

del 語句(delete簡寫)   用於刪除變數,同時解除此變數與物件的繫結關係   如果可能則釋放物件

  語法:     del 變數名

自動化記憶體管理和引用計數   每個物件會記錄有幾個變數引用自身,當引用的數量為0時此物件被銷燬,此種自動化記憶體管理的方式叫引用計數

  a = 10000   b = 20000   a = b  # 釋放10000  同時a繫結在20000上

is / is not 運算子   作用:     判斷兩個物件是否是同一個物件,當是同一物件時返回True,否則返回False

    is not 的作用與is相反   語法:       x is y       x is not y

  x=10000   x=y   x is y   #true

  x=10000   y=10000   x is y   #false

  小整數物件池      CPython中 整數-5至256永遠存在於小整數物件池中, 不會釋放並可重複使用   x=100   y=100   x is y    #true

id(x) 函式   作用:     返回一個物件在記憶體中的地址

練習   1. 寫程式在終端打印出如下圖形:      *     ***    *****   *******

  2. 中國古代的秤是16兩一斤,請問中國古代的216兩是古代的幾斤幾兩,寫程式打印出來

  3. 從凌晨 0:0:0 計時,到現在已經過了63320秒     請問現在是幾時幾分幾秒? 寫程式打印出來     提示:可以用地板除和求餘來實現

  4. 溫度轉換     攝氏溫度 = 5.0/9.0*(華氏溫度-32)     開氏溫度 = 攝氏溫度 + 273.15     問:       100華氏溫度轉為攝氏溫度是多少度?       轉為開氏溫度是多少度?