標籤:json格式 line master 函數定義 條件 tps 數值 環境 協助
1周第1天 主要是變數的學習(11月8日)
1.1 python安裝(win和linux下)
1.2 ipython安裝及使用
1.3 變數的定義
1.4 變數賦值
1.5 運算子(賦值、算術、關係、邏輯)
1.6 運算式
相關練習:1) 寫一個四則運算器,要求從鍵盤讀取數字 2) 體會input()與raw_input()區別
擴充知識:十進與十六進位互相轉換、十進位與字串互相轉換,int()、hex()、str()
1周第2天 資料類型(11月9日)
1.1 數實值型別(整型、長整型、浮點型、複數型)
1.2 序列之字串類型(引號的使用、下標與切片)
1.3 序列之元組
1.4 序列之列表(增、刪、改、查及一些方法,體會對象的方法)
1.5 獲得協助
1.5.1 ipython下使用help命令獲得協助資訊
1.5.2 https://docs.python.org/2/library
1.6 相關練習:1)字串轉換成列表---list()函數 2)列錶轉換成字串---字串的join()方法
擴充知識:去掉列表裡的重複元素,體會set()的使用
1周第3天 字典學習(11月10日)
說明:2.9和3.0兩節安排在前面學習
1.8 字典
1.9 字典練習
2.9 資料類型轉換(計算mac地址)
3.0 資料類型轉換(列表與字典相互轉換)
知識擴充:把2個列表存到一個字典裡,其中一個列表的各個元素分別作為字典的key,另一個列表的各個元素作為字典的value。掌握dict()函數的使用
1周第4天 流程式控制制(11月11日)
2.0/2.1 流程式控制制 - if條件
2.2 流程式控制制 - for序列
2.3 流程式控制制 - for字典
2.4 迴圈退出
相關練習:列印乘法口訣表
1周第5天 流程式控制制第二部分(11月12日)
說明:周六本不應該安排任務,但是為了對應好周,額外給大家安排一天任務。
2.5 流程式控制制 - while
2.6 使用for迴圈遍曆檔案
2.7 使用while迴圈遍曆檔案
2.8 統計系統剩餘記憶體
相關練習:統計系統的free的記憶體
擴充練習:統計apache進程所佔的記憶體及百分比
2周第1天 函數(11月14日)
1.1 函數定義
1.2 函數參數
1.3 函數預設參數
1.4 函數的變數
1.5 函數傳回值
1.6 多類型傳值和冗餘參數
相關練習:1) 判斷一個字串是純數字,使用函數 2) 使用字串的isdigit()方法改造上面的例子
2周第2天 函數第二部分(11月15日)
1.7 函數的遞迴調用
1.8 遞迴列出目錄裡的檔案
1.9 匿名函數
相關練習:遞迴列出目錄裡所有檔案
Python的練習題連結:http://ask.apelearn.com/question/15707
2周第3天 內建函數與模組(11月16日)
2.0 - 2.4 內建函數
2.5 - 2.6 模組的使用
2周第4天 物件導向編程(11月17日)
2.7 物件導向介紹
2.8 類的屬性
2.9 類的方法
3.0 類的內建方法
2周第5天 物件導向編程第二部分(11月18日)
3.1/3.2 類的繼承
3.3/3.4 類的總結
3.5-3.8 rc指令碼
相關練習:使用類建立一個rc指令碼,以memcached為例。通過這個例子,對類的使用有一定瞭解,加深及鞏固關於類的一些概念。
文章 http://ask.apelearn.com/question/15734
3周第1天
1.1 python處理標準輸入
1.2 檔案處理的一些方法
1.3 python處理標準輸出
知識點擴充:內建變數__file__
作業練習:使用python實作類別似tee這樣的命令。
文章 http://ask.apelearn.com/question/15750
3周第2天
1.4/1.5簡單的wc命令實現
1.6 使用optparse模組實現wc命令
1.7 wc命令中使用函數
作業練習:寫個程式統計檔案大小,例如:1.py [-H] filename
支援-H選項,以可讀的方式顯示檔案檔案,1-1024B直接顯示檔案大小,比如100。1k-1M以單位K顯示,例如10K。1M-1G之間以單位M顯示,例如10M。
3周第3天
1.8 python版的wc命令
1.9 理解__name__內建變數
2.0 擴充wc命令
作業練習:使用python實作類別似tee -a這樣的命令
http://ask.apelearn.com/question/15775
3周第4天
1.1 hashlib模組使用
1.2 os.walk模組使用
1.3 理解產生器yield
作業練習:找出目錄中佔用空間大的前10個檔案。
擴充練習(可選):試著寫一個程式,與os.walk功能一樣。
3周第5天(11.25)
1.4 練習檔案md5值得校正
1.5 字典排序
1.6 python調用外部命令
相關練習:使用課程中講到的方法執行ifconfig和chown命令,體會各自的執行結果
http://ask.apelearn.com/question/15792
4周第1天(11.28)
1.7 python異常處理
1.8 自訂異常
1.9 subprocess模組使用
練習作業:寫一個程式顯示檔案內容,要求程式帶一個參數,如果沒有帶參數提示並退出,如果檔案不存在提示退出,如果不是標準檔案提示退出,使用異常處理。
http://ask.apelearn.com/question/15812
4周第2天(11月29日)
2.0 判斷一個字串是數字
2.1 統計apache進程佔用實體記憶體
2.2-2.3 dmidecode系統資訊
相關練習:python裡執行dmidecode命令,並儲存到檔案
4周第3天11月30日
2.4-2.5 收集ip資訊
2.6-2.8 收集主機資訊
作業練習:1) 收集主機mac地址。提示使用tcpdump -nn -i eth0 port 68 -l 2) 應用環境,在kickstart集中式部署時使用
http://ask.apelearn.com/question/15824
4周第4天(12月1日)
2.9 Regex
3.0 re模組的一些方法
3.1 Regex分組
3.2 使用正則收集ip資訊
作業練習:1) 使用Regex收集主機網卡名、ip地址、mac地址 2) 使用Regex匹配apache的access_log和error_log。
http://ask.apelearn.com/question/15839
4周第5天(12月2日)
1.1 Django簡介及安裝
擴充知識:看django官方文檔
https://docs.djangoproject.com/en/1.8/ part1-3
http://djangobook.py3k.cn/2.0/
5周第1天(12月5日)
1.2 添加應用
1.3 資料模型
1.4 訪問資料庫
5周第2天(12月6日)
1.5 資料傳遞post和get
1.6 建立simplecmdb項目
1.7 收集主機資訊到cmdb
相關練習:建立應用hostinfo應用,使用收集指令碼把資訊存到cmdb。
5周第3天(12月7日)
1.8 主機分組管理
1.9 序列化介紹及pickle模組
2.0 pickle模組應用
5周第4天(12月8日)
2.1 json模組應用及資料庫查詢
2.2 API-json格式
2.3 API-shell格式
6周第1天(12月12日)
1.1 nagios安裝及設定檔介紹
1.2-1.5 nagios設定檔產生器
作業:把cmdb裡的主機產生nagios設定檔
6周第2天(12月13日)
1.6 瞭解nagios外掛程式
1.7-1.8 編寫nagios外掛程式 - 監測記憶體
6周第3天(12月14日)
1.9-2.2 編寫nagios外掛程式 - 監控syslog
2.3 nagios監控其他主機
作業:
1. 編寫監控syslog的外掛程式,如果1分鐘內出現相同的錯誤3次並且發郵件警示。
2. 編寫外掛程式監控遠程主機的apache進程數和所佔的實體記憶體
http://ask.apelearn.com/question/15936
6周第4天(12月22日)
1.1 多線程介紹與多線程模組-thread
1.2 -1.3 thread的鎖
1.4 threading 模組
1.5 - 1.6 互斥鎖
作業:分別使用thread和threading模組,使用兩個線程輸出hello world
6周第5天(12月23)
1.7 - 1.8 線程間通訊--Queue模組
作業:一個線程產生10個隨機數,另一個線程取出奇數,偶數再放回隊列裡。使用隊列,並且使用類實現。
http://ask.apelearn.com/question/15978
7周第1天(12月26日)
1.9 多進程模組multiprocessing
2.0 進程池
2.1 paramiko模組
7周第2天(12月27日)
2.2 -2.5 並行命令
2.6 - 2.7 並行命令與simpleCMDB
2.8 fabric模組
作業:
1. 自己安裝一個clusterit軟體包,產生一個dsh命令,用來實現並行命令。
2. 根據自己的cmdb實現並行命令
http://ask.apelearn.com/question/15997
7周第3天(12月28日)
2.9 salt-master安裝
3.0 salt-minion安裝
3.1 啟動salt服務
3.2 使用salt命令
作業:使用pip方式安裝salt
7周第4天(12月29日)
3.3 使用salt管理安裝軟體
3.4 使用salt管理檔案
3.5 使用salt管理服務
3.6 highstate模組
3.7 salt多環境
作業:學會看saltstack文檔
7周第5天(12月30日)
3.8 target(glob和grain)
3.9 target(compound)
4.0 target(nodegroup)
4.1 sls檔案模板
4.2 設定檔範本
4.3 salt與simpleCMDB整合
作業:通過saltstack同步下面內容
1. 軟體:openssl,openssl-devel,ntp,openssh-clients,xorg-x11-xauth,ypbind,httpd,net-snmp-utils,net-snmp
2. 檔案:/etc/hosts,/etc/yp.conf,/etc/nsswitch.conf,/root/.ssh目錄
3. 服務:rpcbind,ypbind,snmpd
4. crontab,每小時同步一次時間
Python學習進程