CPU:中央處理器,計算機的邏輯運算單元python
硬盤:長期存儲數據的地方,斷電不會丟失git
內存:位於CPU與硬盤之間,緩解高速CPU與低速硬盤之間的矛盾編程
(1)內存讀取速度快,硬盤讀取速度慢swift
(2)內存價格昂貴,硬盤價格便宜編程語言
(3)內存中的數據斷電會丟失,硬盤斷電後不會丟失函數
當咱們點擊程序圖標時,操做系統將程序加載到內存裏,而後CPU從內存裏讀取指令並執行,典型的過程以下圖:spa
編程語言主要從如下幾個角度分類:編譯型與解釋型,靜態語言與動態語言,強類型定義語言與弱類型定義語言。操作系統
編譯型語言:需經過編譯器將源程序編譯成機器碼,通常需通過編譯(compile)和連接(link)兩個過程。code
編譯是將源程序轉換成機器碼,連接是將各個模塊的機器碼和依賴庫串聯起來生成可執行文件;對象
優勢是編譯只須要一次,運行時不須要編譯,於是執行效率高,且能夠脫離語言環境獨立存在;
缺點是編譯以後若是須要修改就須要對整個模塊從新編譯;編譯的時候根據對應的生產環境生成不一樣的機器碼,不一樣操做系統之間移植就會有問題;
表明語言有C,C++,Go,Pascal,objective-C,swift等
解釋型語言:沒有編譯環節,只在運行程序時逐行解釋,逐行運行。
優勢:一是平臺兼容性好,在任何環境中都能運行,固然前提是安裝了虛擬機(解釋器),二是靈活,修改代碼的時候直接修改就能夠,能夠快速部署,不用停機維護;缺點是執行效率低(注意只是執行效率,解釋型語言的編寫效率是很高的)
表明語言有Javascript,Python,Ruby,PHP,Perl,Erlang。
補充:還有一類混合型語言,如Java和C#
動態語言: 運行時結構能夠改變的語言,例如新的函數,對象甚至代碼能夠被引進已有的函數能夠被刪除或是其餘結構上的變化。通俗點說就是在運行時代碼能夠根據某些條件改變自身結構。
主要有:Object-C、C#、JavaScript、PHP、Python、Erlang。
靜態語言:與動態語言相反,運行時結構不能改變的語言
主要有:Java、C、C++
這裏要分清靜態語言和靜態類型語言,動態語言和動態類型語言,動態類型語言是指在運行期間纔去作數據類型檢查的語言,說的是數據類型;動態語言是指運行時能夠改變結構,說的是結構。
動態類型語言的數據類型不是在編譯階段決定的,而是把類型綁定延後到了運行階段,主要語言:Python、Ruby、Erlang、JavaScript、swift、PHP、Perl。
靜態語言的數據類型是在編譯期間(或運行以前)肯定的,編寫代碼的時候要明確肯定變量的數據類型。主要語言:C、C++、C#、Java、Object-C。
python裏有int,str,bool幾種數據類型
int爲整型,在python2中int表示的範圍:-2**31~2**31-1;在python3裏幾乎能夠表示任意整數
str爲字符串,運算方法有+,*
bool爲布爾值,表示真假兩種狀態,True和False
if 控制語句:
執行語句
else :
執行語句
代碼示例:
1 age = int(input("請輸入年齡:")) 2 if age >= 18: 3 print("能夠愉快地去網吧啦~") 4 else: 5 print("小屁孩,再等幾年吧")
運行結果:
請輸入年齡:18 能夠愉快地去網吧啦~ Process finished with exit code 0
請輸入年齡:2
小屁孩,再等幾年吧
Process finished with exit code 0
if 控制語句:
執行語句
elif 控制語句:
執行語句
elif 控制語句:
執行語句
... # 能夠輸入多個elif語句
else 控制語句:
執行語句
1 age = int(input("請輸入年齡:")) 2 if age >= 18: 3 print("能夠愉快地去網吧啦~") 4 elif age > 0: 5 print("小屁孩,再等幾年吧") 6 else: 7 print("輸入年齡錯誤,年齡應該爲正整數!")
運行結果:
請輸入年齡:19 能夠愉快地去網吧啦~ Process finished with exit code 0
請輸入年齡:-3
輸入年齡錯誤,年齡應該爲正整數!
Process finished with exit code 0
if 控制語句 :
執行語句
else:
if 控制語句:
執行語句
else:
執行語句
1 age = input("請輸入年齡:") 2 if not age.isdigit(): 3 print("年齡應該爲數字!") 4 else: 5 age = int(age) 6 if age >= 18: 7 print("能夠愉快地去網吧啦~") 8 elif age > 0: 9 print("小屁孩,再等幾年吧") 10 else: 11 print("年齡不能爲0!")
運行結果:
請輸入年齡:哈哈哈
年齡應該爲數字!
Process finished with exit code 0
請輸入年齡:abc
年齡應該爲數字!
Process finished with exit code 0
請輸入年齡:88 能夠愉快地去網吧啦~ Process finished with exit code 0
請輸入年齡:8
小屁孩,再等幾年吧
Process finished with exit code 0
請輸入年齡:0
年齡不能爲0!
Process finished with exit code 0