1. 程式人生 > 實用技巧 >老男孩第十四期Python學習班之Day05

老男孩第十四期Python學習班之Day05

>>> hot3.png

一、小雞湯
推薦各種電影 — —!大概有20幾部。

二、ATM作業分析
設計思想 —— 解耦

三、定義
模組的定義:用來從邏輯上組織python程式碼(變數、函式、類、邏輯:實現一個功能)。本質就是一個*.py檔案。
包的定義:用邏輯上組織模組,本質是一個目錄(必須帶有一個__init__.py的檔案)

四、模組的匯入

  1. import module_name # 呼叫時,module_name.func()
  2. import module_name1, module_name2
  3. from module_name import * # 匯入模組下所有程式碼,呼叫時不再用module_name.func()
  4. from module_name import say_hello # 匯入模組中的say_hello方法。呼叫時say_hello()
  5. from module_name import func1, func2, func3 # 多個匯入
  6. module_name import say_hello as m1_sayhello # 呼叫時m1_sayhello()。 as 別名。

五、import的本質(路徑搜尋,搜尋路徑)
本質:就是把python檔案解釋一遍。
匯入包的本質:就是執行包裡面的 __init__.py 檔案

六、優化
儘量使用from xx import xxx的方式,這樣不會多次查詢。

七、模組的分類

  1. 標準庫
  2. 第三方模組
  3. 自定義模組

八、標準庫

1、time與datetime:表示是時間的方式:1、時間戳;2、格式化;3、元祖(struct_time)九個元素。

2、random

3、os

4、sys

5、shutil

6、json與pickle

用於序列化的兩個模組

  • json,用於字串 和 python資料型別間進行轉換
  • pickle,用於python特有的型別 和 python的資料型別間進行轉換

Json模組提供了四個功能:dumps、dump、loads、load

pickle模組提供了四個功能:dumps、dump、loads、load

7、shelve

8、XML

9、ConfigParser


10、hashlib

11、re

作業:

開發一個簡單的python計算器

  1. 實現加減乘除及拓號優先順序解析
  2. 使用者輸入1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-4*3)/ (16-3*2) )等類似公式後,必須自己解析裡面的(),+,-,*,/符號和公式(不能呼叫eval等類似功能偷懶實現),運算後得出結果,結果必須與真實的計算器所得出的結果一致

轉載於:https://my.oschina.net/asktao/blog/820589