一、Python簡介
python的創始人為吉多·範羅蘇姆(Guido van Rossum)。1989年的聖誕節期間,吉多·範羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的指令碼解釋程式,作為ABC語言的一種繼承,Python通過C語言開發。
TIOBE開發語言排名(2018-01-17),python排名第四
https://www.tiobe.com/tiobe-index/
Python可以應用於眾多領域,如:資料分析、元件整合、網路服務、影象處理、數值計算和科學計算等眾多領域。目前業內幾乎所有大中型網際網路企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。網際網路公司廣泛使用Python來做的事一般有:自動化運維、自動化測試、大資料分析、爬蟲、Web 等。
1、優點:
python的類庫齊全並且使用簡潔,10行程式碼可以解決c100行程式碼處理的問題
2、缺點:
python執行速度慢於C。C語言: 程式碼編譯得到 機器碼 ,機器碼在處理器上直接執行,每一條指令控制CPU工作。其他語言:程式碼編譯得到位元組碼 ,虛擬機器執行位元組碼並轉換成機器碼再後在處理器上執行
預設Python使用的是Cpython,即變異後會生成.pyc的檔案,pyc檔案為位元組碼檔案,程式碼經過編譯可以產生位元組碼;位元組碼通過反編譯也可以得到程式碼。
二、Python安裝
Windows下安裝python
1、下載安裝包 https://www.python.org/downloads/ 2、安裝 預設安裝路徑:C:\python27 3、配置環境變數 【右鍵計算機】--》【屬性】--》【高階系統設定】--》【高階】--》【環境變數】--》【在第二個內容框中找到 變數名為Path 的一行,雙擊】 --> 【Python安裝目錄追加到變值值中,用 ; 分割】 如:原來的值;C:\python27,切記前面有分號
Linux下安裝python
無需安裝,linux預設自帶Python環境 ps:如果自帶2.6,請更新至2.7 檢視預設Python版本 python -V 1、安裝gcc,用於編譯Python原始碼 yum install gcc 2、下載原始碼包,https://www.python.org/ftp/python/ 3、解壓並進入原始碼檔案 4、編譯安裝 ./configure make all make install 5、檢視版本 /usr/local/bin/python2.7 -V 6、修改預設Python版本 mv /usr/bin/python /usr/bin/python2.6 ln -s /usr/local/bin/python2.7 /usr/bin/python 7、防止yum執行異常,修改yum使用的Python版本 vi /usr/bin/yum 將頭部 #!/usr/bin/python 修改為 #!/usr/bin/python2.6
三、Python基本使用
本次學習全部採用Python3.0+版本python
1、第一python指令碼編寫和執行
#!/usr/bin/env python # -*- UTF-8 -*- # Author:Rangle print("Hello world !")
[root@localhost ~]# python py01.py Hello world !
內部執行流程如下:
2、編碼
python2.X預設是ascill,3.0預設採用utf-8編碼,可以再檔案開頭指定檔案編碼格式
#!/usr/bin/env python # -*- coding: utf-8 -*-
3、註釋
當行注視:# 被註釋內容 多行註釋:""" 被註釋內容 """
4、指令碼傳參
Python有大量的模組,從而使得開發Python程式非常簡潔。類庫有包括三中:
- Python內部提供的模組
- 業內開源的模組
- 程式設計師自己開發的模組
Python內部提供一個 sys 的模組,其中的 sys.argv 用來捕獲執行執行python指令碼時傳入的引數
[root@localhost ~]# more py02.py #!/usr/bin/python # -*- coding: utf-8 -*- import sys print (sys.argv )
[root@localhost ~]# python py02.py a b c ['py02.py', 'a', 'b', 'c']
5、變數宣告
變數定義的規則:
- 變數名只能是 字母、數字或下劃線的任意組合
- 變數名的第一個字元不能是數字
- 以下關鍵字不能宣告為變數名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
#!/usr/bin/python name="Tomy"
6、輸入和輸出
密碼隱式輸入,需要通過getpass模組,利用getpass.getpass
#!/usr/bin/env python # -*- UTF-8 -*- # Author:Rangle
name=input("請輸入你的名字:")
alt="帥哥"
print("我的名字是:%s , %s" %(name,alt))
輸出結果:
請輸入你的名字:黎明
我的名字是:黎明 , 帥哥
#!/usr/bin/env python # -*- UTF-8 -*- # Author:Rangle import getpass name = input('請輸入使用者名稱:') pwd = getpass.getpass('請輸入密碼:') print(name,pwd) 結果如下: 請輸入使用者名稱:黎明 請輸入密碼: 黎明 123456
7、流程控制(if.. else語句)
Python流程控制通過if else語句和If .. elif ...else控制,具體語法設示例如下:
語法1: if 條件: 語句1 else: 語句2 語法2: if 條件1: 語句1 elif 條件2: 語句2 else: 語句3
示例:
#!/usr/bin/env python # -*- UTF-8 -*- # Author:Rangle import getpass name = input('請輸入使用者名稱:') if name=="黎明": pwd = getpass.getpass('請輸入密碼:') if pwd=="123456": print("使用者密碼正確!") else: print("密碼錯誤!") elif name=="郭富城": pwd = getpass.getpass('請輸入密碼:') if pwd == "qwe123": print("使用者密碼正確!") else: print("密碼錯誤!") else: print("使用者名稱錯誤")
8、迴圈語句(while)
python中迴圈有while和for兩種,這裡就介紹while迴圈使用方法
語法:
while 條件: # 迴圈體
##備註說明 ##如果條件為真,那麼迴圈體則執行 ##如果條件為假,那麼迴圈體不執行 ##迴圈體如果含有continue表示跳出本次迴圈,繼續下一次迴圈 ##迴圈體如果含有break表示結束迴圈,即跳出迴圈體對應的迴圈
示例:
#!/usr/bin/env python # -*- UTF-8 -*- # Author:Rangle num=1 while num<=10: if num==5: num = num + 1 continue elif num==8: break else: print(num) num = num + 1
四、Day-01練習題
1、使用while迴圈輸入 1 2 3 4 5 6 8 9 10
2、求1-100的所有數的和
3、輸出 1-100 內的所有奇數
4、輸出 1-100 內的所有偶數
5、求1-2+3-4+5 ... 99的所有數的和
6、使用者登陸(三次機會重試)
本文內容參考:http://www.cnblogs.com/wupeiqi/articles/5433925.html