1、自動化流程圖html
一、Jenkins:一個用java編寫的開源持續集成工具java
二、測試環境:PHP、C、等其它服務端程序python
三、測試平臺:Robot Framework/Junit/python等語言ios
2、python簡介數據庫
一、python語言的介紹(谷歌公司的員工)windows
二、優缺點服務器
優勢:「優雅」、「明確」、「簡單」; 擁有很是強大的第三方庫等工具
缺點:運行速度慢;代碼不能加密測試
三、應用場景優化
四、拓展:GO語言--谷歌開發的,如:刀塔就是利用go語言開發的
3、變量
變量相關知識點參考連接:http://www.cnblogs.com/mjios/archive/2013/05/07/3065522.html
一、聲明變量--聲明完以後就已經把變量存儲在內存當中了
例子一、
name,age = "tanghouzi",20
例子2
name = "tang houzi" #全部帶引號的,不論是單、雙、三引號,都是被python認爲是字符串
age = 20 #python是分數字類型的,分爲數字和字符串,這是數字,上面的是字符串
例子1與例子2的意思是相同的
二、變量的調用
name #這樣的話就表示調用了變量 print (name,age) #打印兩個變量name和age,輸入完以後,工具就會自動幫忙保存
三、變量的命名規則
|
若是須要標識的太過於複雜,須要用_區分開來 |
name_of_brothors_age = 2 |
若是不使用下劃線的話,可使用首字母大寫來進行區分 |
NameOfBrothersAge = 2(駝峯體) |
|
中橫線 - 表明的是減法,已經被其餘的預發佔用的,不能用來命名 |
||
命名禁忌 |
不能夠數字開頭 | |
不能夠特殊字符開頭,下劃線是能夠的 例如:$&*&&& | ||
變量裏面不能有空格 |
||
python自帶成語法的關鍵字不能使用 如:and as assert break class等 |
四、做用域
name = "monkey" #將monkey賦值給name name2 = name #將name的值賦值給name2,其實就是直接將monkey賦值給了name,這個時候name對應的值就是monkey print(name,name2) #打印上面的name、name2 name = "hahah" #將name賦予新的值爲hahah print(name,name2) #打印出來name = hahah name1 = monkey
4、常量
在python當中是沒有常量這個概念的,可是當別人定義數據的時候前面是所有大寫的話,就表示是一個常量,不能修改的,若是修改的話會報錯。
如:鏈接數據庫的信息算是一個常量,不能隨便的進行更改。若是有更改的話應該要重啓下程序才能夠。
5、字符編碼
計算機只能識別的是0、1的這兩種二進制組合,可是人眼的話須要展現的是界面--將人能看得懂的頁面轉化成0、一、0、1的形式便可
一、ascii編碼
1個字符 = 8比特位(bit,8個0或1二進制編碼組成) = 1字節(byte)
如圖所示,有127個字符,若是咱們本身看到一個字母E其實計算機去ascii表中查詢字母E對應的十進制69,而且轉化成二進制01010100;計算機是由西方人發明的,剛開始的時候只能支持英文,也就是26個字母就能夠拼出全部的英文單詞,加上一些特殊字符就只有佔用127個字符--一個字符就能夠將整張表的數據存儲下來。一個字節8位,能表示的最大數字位28 -1 =255個字符
上面的ascii中佔用的是127,剩下擴展的爲255 - 127 =128種方式。後面其它國家的經濟發展愈來愈快,如:中國這邊也引進了電腦的技術,並且單單經常使用的漢字就有六千多個字,就將剩下的字符中佔用一位字符擴展成另外一張表(這張表要存儲的大小由咱們本身來肯定),這張擴展出來的表中存儲的就是所有的中文和其它國家的文字。中國擴展的表中會包含日文、韓文、中文,日本所擴展的表中也有了中文、日文等語言,這樣就會同意了亂碼的狀況(同一種語言在不一樣編碼表裏面的編碼歸責是不同的)--國外的部分軟件,咱們安裝以後就會亂碼(字符集出現交叉致使亂碼要麼就是沒有安裝相對應的字符集)
二、unicode編碼
因爲上面會出現亂碼的問題,因此就統一推出了unicode編碼(統一碼、萬國碼),是一種在計算機上使用的字符編碼,unicode是爲了解決傳統的字符編碼方案的侷限而產生的,,它爲每種語言中的每一個字符設定了統一而且惟一的二進制編碼,規定全部的字符和符號最少由16位來表示(2個字節),即216 = 65536種 (比以前的ascii多一個或者更多的字符,佔用的空間太大,推出下面的UTF-8 編碼)
三、UTF- 8編碼
是對unicode編碼的壓縮和優化,再也不使用最少2個字節,而是將全部的字符和符號進行分類:ascii碼種的內容用1個字節保存,歐洲的字符用2個字符保存,東亞(中文)的字符由3個字符保存
四、加解釋器和字符集
python2的時候,只支持ascii碼,因此若是輸入的包含中文的話,須要聲明編碼位UTF- 8編碼
#!/user/bin/env python 加解釋器 # -*- coding: utf-8 -*- 加字符集
6、註釋
一、定義
# | 在每段代碼後面或者是上面能夠利用#進行添加單行註釋 |
''' ''' | 多行註釋(能夠爲單、雙引號,可是必定要英文的輸入法狀況下寫入) |
二、python的開發規範:每一行的代碼不超過80個字符
三、用戶輸入--input
python2 | raw_input |
user_input = raw_input("your name:") |
input |
name = "haha" #先聲明變量name user_input = input("your name:") print (user_input) 若是在2.7裏面使用input的話,輸入的是一個字符串的時候,系統不認爲是一個字符串,而是一個變量, |
|
python3 | input |
user_input = input('input your name:')
print("user input msg:",user_input)
打印結果解析:輸入用戶名字,而後打印出來所要打印出來的結果 |
7、格式化字符串
name = input("input your name:") age = int(input("input your age:")) job = input("input your job:") msg=''' Infomation of user %s: ---------------------- Name: %s Age: %f Job: %s ----------End--------- '''%(name,name,age,job) print(msg)
一、文本格式化:將外面的變量置換到文本里面
二、佔位符: %
每個佔位符必須賦予一個變量,若是輸出到是字符串的話用s來表示;若是是數字的話則用d來表示;若是是小數(浮點數)的話則用f來表示
三、只要用input,在python3裏面默認輸出的是字符串的形式,若是咱們在後面的age中強制將輸入的字符變成是數字的,這個時候在input的時候須要強制轉換成數字類型(int)
四、浮點型舉例
8、經常使用模塊初識--import
一、Linux命令(用Mac終端執行的)
df:用來檢查Linux服務器的文件系統磁盤空間佔用狀況
df-h:方便閱讀方式顯示
ls:列出文件和目錄
新建文件並查詢
二、導入當前目錄模塊
三、環境變量的查詢方式
通常本身寫的模塊都是保存在python的site-packages文件夾裏面
若是將文件保存在site-packages文件夾裏面(或者上面的任意一個文件夾當中)的話,則表示的是適用於所有的文件的,保存在其它文件夾當中的話則表示只適用於這個文件夾的文件
四、tab補全模塊文檔保存
新建一個tab.py文件,將下面的代碼複製進去,放在驅動的文件夾裏面便可,這樣就能夠適用於所有文件的tab補全文檔了
PS: 此文檔僅適用於Mac,關於windows文檔須要自行百度哦。
#!/user/bin/env python # -*- coding: utf-8 -*- import readline,rlcompleter ### Indenting class TabCompleter(rlcompleter.Completer): """Completer that supports indenting""" def complete(self, text, state): if not text: return (' ', None)[state] else: return rlcompleter.Completer.complete(self, text, state) readline.set_completer(TabCompleter().complete) ### Add autocompletion if 'libedit' in readline.__doc__: readline.parse_and_bind("bind -e") readline.parse_and_bind("bind '\t' rl_complete") else: readline.parse_and_bind("tab: complete") ### Add history import os histfile = os.path.join(os.environ["HOME"], ".pyhist") try: readline.read_history_file(histfile) except IOError: pass import atexit atexit.register(readline.write_history_file, histfile) del histfile
五、查詢規則