python第一章小結
第一章總結
一、簡述編譯型與解釋型語言的區別,且分別列出你知道的哪些語言屬於編譯型,哪些屬於解釋型
編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;
- 如C C++ Delphi 等語言是編譯型語言
而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的. ----跨平臺。
- 如Python Java PHP Ruby等語言是解釋型語言
高級語言所編制的程序不能被計算機所知別,必須講過轉換才能被執行,按照轉換方式,可以將其分為兩類,一類是編譯類,一類是解釋類
編譯類:就是在應用源碼程序執行之前,就將程序源代碼“翻譯”成目標代碼(機器語言),因此其目標程序可以脫離其語言環境獨立執行。使用比較方便,效率也高,但是應用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標(*.obj ,也就是OBJ文件)才能執行,只有目標文件而沒有源代碼,修改很不方便。
特點:編譯後程序運行時不需要重新翻譯,直接使用編譯的結果就行了。程序執行效率高,依賴編譯器,跨平臺性比較差,如C,C++,Delphi等
優點:1,執行程序時候,不需要源代碼,不依賴語言環境,因為執行的是機器源文件。
2,執行速度快,因為程序代碼已經翻譯成計算機可以理解的機器語言。
缺點:1,每次修改了源代碼,需要重新編譯,生成機器編碼文件
2,跨平臺性不好,不同操作系統,調用底層的機器指令不同,需要為不同的平臺生成不同的機器碼文件。
解釋類:執行方式類似於我們生活中的“同聲翻譯”,應用程序源代碼一邊由相應語言的解釋器“翻譯”成目標代碼(機器語言),一邊執行,一邊翻譯,因此效率比較低。
特點:效率低,不能生成獨立的可執行文件,應用程序不能脫離其解釋器,但是這種方式比較靈活,可以動態的調整,修改應用程序。如Python,Java,PHP,Ruby等語言。
優點:1,用戶調用解釋器,執行源碼文件,而且可以隨時修改,立即見效,改完源代碼,直接運行看結果
2,解釋器把源碼文件一邊解釋成機器指令,一邊交給CPU執行,天生跨平臺,因為解釋器已經做好了對不同平臺的交互處理,用戶寫的源代碼不需要考慮平臺差異性。
缺點:1,代碼是明文
2,運行效率低,所有的代碼是需要解釋器邊解釋邊執行,速度比編譯型慢很多。
執行python腳本的兩種方式是什麽
- 交互器執行,在控制臺上運行臨時輸入的代碼
- 文件操作,執行一個保存好的py文件
兩者的區別是:一個是內存操作,一個是硬盤操作,
內存的特點是:讀取速度快,但是斷電就丟失數據
硬盤的特點是:速度慢,但可以保存數據
聲明變量註意事項是什麽?
變量定義規則:
1,變量名只能是字母,數字或者下劃線的任意組合
2,變量名的第一個字符不能是數字
3,關鍵字不能生命問變量名
註意事項:
1,變量名不能過長
2,變量名詞不達意思
3,變量名為中文,拼音
如何查看變量在內存中的地址?
print(id.__doc__)
Return the identity of an object.
This is guaranteed to be unique among simultaneously existing objects.
(CPython uses the object‘s memory address.)
寫代碼
實現用戶輸入用戶名,當用戶名為james,且密碼是123456,顯示登陸成功,否則登陸失敗。
1 username = "seven" 2 password = "123" 3 4 _username = input("請輸入用戶名:") 5 _password = input("請輸入密碼:") 6 7 if _username == username and _password == password: 8 print("恭喜登陸成功.....") 9 else: 10 print("登錄失敗,用戶名或密碼錯誤....")View Code
實現用戶輸入用戶名,當用戶名為james,且密碼是123456,顯示登陸成功,否則登陸失敗,失敗次數允許重復三次
1 username = "seven" 2 password = "123" 3 count = 0 4 while count < 3: 5 _username = input("用戶名:") 6 _password = input("密碼:") 7 if _username == username and _password == password: 8 print("歡迎", username, "登陸.....") 9 break 10 else: 11 print("用戶名或密碼錯誤....") 12 count += 1 13 print("您還有", 3 - count, "次機會重新登陸") 14 else: 15 print("登陸失敗")View Code
實現用戶輸入用戶名和密碼,當用戶名位sevev或alex且密碼為123時,顯示登陸成功,否則登錄失敗,失敗時允許重復輸入三次.
1 username = "seven" 2 username1 = "alex" 3 password = ‘123‘ 4 count = 0 5 while count < 3: 6 _username = input("username:") 7 _password = input("password:") 8 if _username == username or _username == username1: 9 if _password == password: 10 print("Welcome", _username, "login.....") 11 break 12 else: 13 print("wrong password....please try again.") 14 count += 1 15 print("you have", 3 - count, "times to try.") 16 continue 17 else: 18 print("Wrong username...please try again") 19 count += 1 20 print("you have", 3 - count, "times to try.") 21 continue 22 else: 23 print("you tried too many times...")View Code
使用while循環實現輸出2-3+4-5+6......+100的和
1 count = 2 2 count1 = 0 3 while count < 101: 4 if count % 2 == 0: 5 count1 += count 6 else: 7 count1 -= count 8 count += 1 9 else: 10 print(count1)View Code
使用while循環實現輸出1,2,3,4,5,7,8,9,11,12
1 count = 1 2 while count < 13: 3 if count == 6 or count == 10: 4 pass 5 else: 6 print(count) 7 count += 1View Code
使用while循環輸出100-50,從大到小,如100,99,98....,到50時再從0循環輸出到50,然後結束
1 count = 101 2 while True: 3 if count > 50: 4 count -= 1 5 print(count) 6 else: 7 print(50-count) 8 count -= 1 9 if count < 0: 10 breakView Code
使用while循環實現輸出1-100內的所有奇數
1 count = 1 2 # while count < 100: 3 # print(count) 4 # count += 2 5 6 while True: 7 if count % 2 == 1: 8 print(count) 9 count += 1 10 if count == 100: 11 breakView Code
使用while 循環實現輸出1-100內的所有偶數
1 # count = 2 2 # while count <= 100: 3 # print(count) 4 # count += 2 5 6 7 count = 1 8 while count <= 100: 9 if count % 2 == 0: 10 print(count) 11 count += 1View Code
python第一章小結