一、python介紹(詳細內容請參照博文末尾的補充說明):html
動態、強類型、解釋性編程語言。
動態:python變量不須要預先設置變量類型,而是根據賦值的類型來肯定變量的類型,如 a = 3,a就是整數型變量,如 b = 'hello word',b就是字符串類型變量;
強類型,是指變量一旦被賦予某種類型的值後,變量肯定爲相應類型的變量,除非對其進行類型的強制轉換,不然變量的類型不會發生變化,如 a = ‘3’ ,a就是字符串形變量,如需使用進行數值運算,則需a = int(a)進行操做,以後a的類型被轉換爲整數型;
解釋性語言:逐條解釋,能夠直接修改,但必須要在解釋器環境下運行;與解釋性語言相對應的另外一類是編譯型語言,運行以前必需要通過編譯,也能夠打包爲.exe的可執行文件,如C++。
二、python安裝與PyCharm配置:java
- 2.1 python 安裝(windows系統)
參照 [python安裝](https://www.cnblogs.com/weven/p/7252917.html/)- 2.2 PyCharm配置
能夠參照 [ PyCharm初始配置教程](https://www.jianshu.com/p/2a4d388b86e9)- 2.3 補充說明:
- 添加工具欄,進行設置操做比較方便,以下:
code設置,確保代碼一致,好比在python2.7輸出中文,代碼不一致也會出錯,pycharm設置以下:python
同一臺電腦能夠同時安裝python3.和python2.兩個系列的python解釋器,python3.默認編碼爲utf-8,python2.默認編碼爲GBK,在python2.7中如要輸出中文,須要在代碼文件的首行申明使用utf-8編碼格式#-- coding:utf-8 --("-"也能夠是「_」)c++
# -*- coding:utf-8 -*- __author__ = 'chongmao' print('你好,世界') #python 2.7 output zh
pycharm 中能夠選擇python2.7的解釋器,以下:編程
運行:windows
查看控制檯及輸出結果:網絡
默認的字體過小,看起來容易眼睛疲勞,建議根據我的喜愛進行調節:框架
.py文件的重命名操做以下:運維
將工程文件添加爲系統路徑:python2.7
三、下面開始具體的練習內容:
3.0 if else 條件控制語句:
if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3
能夠是:
if condition_1: statement_block_1 elif condition_2: statement_block_2 ellif condition_3: statement_block_3
也能夠是:
if condition_1: statement_block_1 else: statement_block_3
3.1 while 循環
-實現猜數字,初始一個數值,輸入值與初始值比較,並提示「大了」或「小了」,若是猜對了就結束遊戲,不對的話,分階段進行選擇,每階段爲四次:
__author__ = 'Administrator' age_of_oldboy = 23 count = 0 ct_l =4 def print_(): print("it's not right yet","\nYou'v already guessed %s times---"%(count+1),"\ngame over?") #'\n'change lines while count < ct_l: guess_age = int(input("guss age:")) #python 3.x input,the type is string,str_to_int if guess_age == age_of_oldboy : print("yes,you got it.") break # once "==",over the game elif guess_age > age_of_oldboy : if count<ct_l-1: print("think smaller") else: print_() #run the def print_() defined above else: if count<ct_l-1: print("think bigger") else: print_() count +=1 if count ==ct_l: continue_confirm = input("do you want to keep guessing?...Y/N:") #if the player failed four times, provide the choice if continue_confirm == "n" or continue_confirm == "N": break else: count =0
三種輸出結果以下:
3.2 三種方式實現格式化輸出:
__author__ = 'Administrator' name = input("name:") age = int(input("age:")) #integer print(type(age)) job = input("job:") salary = input("salary:") info = """---------info of %s------ name:%s age:%d job:%s salary:%s """%(name,name,age,job,salary) info2 = """---------info of {_name}------ name:{_name} age:{_age} job:{_job} salary:{_salary} """.format(_name=name,_age=age,_job=job,_salary=salary) info3 = """---------info of {0}------ name:{0} age:{1} job:{2} salary:{3} """.format(name,age,job,salary) print(info, info2, info3)
輸出結果以下:
3.3 初級版的user-password驗證:
__author__ = 'Administrator' import getpass _username = "admin" _password = "888" count = 0 cnt = 3 while count < cnt: username = input("username:") password = input("password:") if username == _username and password == _password: print("Welcome user---{name}---login...".format(name=username)) break else : if count < cnt-1: print("Invalid username or password") else: print('Please contact the administrator') count +=1
某種輸出結果以下:
3.4 while和for循環中,break與continue的區別,詳情python 循環語句:
__author__ = 'Administrator' for i in range(0,10): print('loop',i) for j in range (10): if j < 5 : print(j) else: continue
四、補充說明: python介紹
Python能夠應用於衆多領域,如:數據分析、組件集成、網絡服務、圖像處理、數值計算和科學計算等衆多領域。目前業內幾乎全部大中型互聯網企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。
目前Python主要應用領域:
雲計算: 雲計算最火的語言, 典型應用OpenStack
WEB開發: 衆多優秀的WEB框架,衆多大型網站均爲Python開發,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
科學運算、人工智能: 典型庫NumPy, SciPy, Matplotlib, Enthought librarys,pandas
系統運維: 運維人員必備語言
金融:量化交易,金融分析,在金融工程領域,Python不但在用,且用的最多,並且重要性逐年提升。緣由:做爲動態語言的Python,語言結構清晰簡單,庫豐富,成熟穩定,科學計算和統計分析都很牛逼,生產效率遠遠高於c,c++,java,尤爲擅長策略回測
圖形GUI: PyQT, WxPython,TkInter
Python在一些公司的應用:
谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬蟲、Google廣告等項目都在大量使用Python開發
CIA: 美國中情局網站就是用Python開發的
NASA: 美國航天局(NASA)大量使用Python進行數據分析和運算
YouTube:世界上最大的視頻網站YouTube就是用Python開發的
Dropbox:美國最大的在線雲存儲網站,所有用Python實現,天天網站處理10億個文件的上傳和下載
Instagram:美國最大的圖片分享社交網站,天天超過3千萬張照片被分享,所有用python開發
Facebook:大量的基礎庫均經過Python實現的
Redhat: 世界上最流行的Linux發行版本中的yum包管理工具就是用python開發的
豆瓣: 公司幾乎全部的業務均是經過Python開發的
知乎: 國內最大的問答社區,經過Python開發(國外Quora)
春雨醫生:國內知名的在線醫療網站是用Python開發的
除上面以外,還有搜狐、金山、騰訊、盛大、網易、百度、阿里、淘寶 、土豆、新浪、果殼等公司都在使用Python完成各類各樣的任務。
Python 是一門什麼樣的語言?
編程語言主要從如下幾個角度爲進行分類,編譯型和解釋型、靜態語言和動態語言、強類型定義語言和弱類型定義語言,每一個分類表明什麼意思呢,咱們一塊兒來看一下。
編譯和解釋的區別是什麼?
編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機能夠直接以機器語言來運行此程序,速度很快;
而解釋器則是隻在執行程序時,才一條一條的解釋成機器語言給計算機來執行,因此運行速度是不如編譯後的程序運行的快的.
這是由於計算機不能直接認識並執行咱們寫的語句,它只能認識機器語言(是二進制的形式)
編譯型vs解釋型
編譯型
優勢:編譯器通常會有預編譯的過程對代碼進行優化。由於編譯只作一次,運行時不須要編譯,因此編譯型語言的程序執行效率高。能夠脫離語言環境獨立運行。
缺點:編譯以後若是須要修改就須要整個模塊從新編譯。編譯的時候根據對應的運行環境生成機器碼,不一樣的操做系統之間移植就會有問題,須要根據運行的操做系統環境編譯不一樣的可執行文件。
解釋型
優勢:有良好的平臺兼容性,在任何環境中均可以運行,前提是安裝瞭解釋器(虛擬機)。靈活,修改代碼的時候直接修改就能夠,能夠快速部署,不用停機維護。
缺點:每次運行的時候都要解釋一遍,性能上不如編譯型語言。