標籤:輸入密碼 調整 二進位 源檔案 因此 成功 pen ret uniq
第一章總結一、簡述編譯型與解釋型語言的區別,且分別列出你知道的哪些語言屬於編譯型,哪些屬於解釋型
編譯器是把來源程式的每一條語句都編譯成機器語言,並儲存成二進位檔案,這樣運行時電腦可以直接以機器語言來運行此程式,速度很快;
而解譯器則是只在執行程式時,才一條一條的解釋成機器語言給電腦來執行,所以運行速度是不如編譯後的程式啟動並執行快的. ----跨平台。
- 如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 break10 else:11 print("使用者名稱或密碼錯誤....")12 count += 113 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 break12 else:13 print("wrong password....please try again.")14 count += 115 print("you have", 3 - count, "times to try.")16 continue17 else:18 print("Wrong username...please try again")19 count += 120 print("you have", 3 - count, "times to try.")21 continue22 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 = 12 while count < 13:3 if count == 6 or count == 10:4 pass5 else:6 print(count)7 count += 1
View 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 break
View 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 += 110 if count == 100:11 break
View 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 += 1
View Code
python第一章小結