執行python程序的兩種方式
交互式
python是高級(解釋型)語言,寫一句執行一句。
命令行式
python和python解釋器是一種東西,我們說的打開python就是打開python解釋器。
python解釋器是一個應用程序,在cmd中輸入python3 test.txt,他的意思實際上是使用python3解釋器這個應用程序打開test.txt這個文件,然后讀取文件中的內容。
通常的情況如下:
- 編寫一個文本文件,保存
- 通過python3(文本編輯器)解釋器打開文本文件
- 運行文件中的內容(只在這個步驟中才有python語法的概念,py文件和txt文件都可以打開解釋,也證明python3實質上也是一個文本編輯器)
兩種方式的區別
交互式:輸入的指令在內存中運行,按下enter時python解釋器做了一個運行的操作輸出結果。
- 優點:執行效率高,及時報錯,調試方便
- 缺點:在內存運行並沒有保存,所以關上程序代碼消失
命令行式:代碼存放在文本文件中,文本文件存放在硬盤里,解釋器打開文本文件就是把文本文件讀入內存,文本文件內的代碼命令先是作為一串字符進入了內存,python3中,在按下enter鍵時,python3解釋器做了一個運行這串字符的代碼的操作,輸出操作結果
- 優點:永久保存
- 缺點:無法及時報錯,調試麻煩
pycharm
我們想要把兩者的優點集中起來可以使用pycharm軟件
pycharm的快捷方式如下:
ctrl+d復制
ctrl+y刪除
shift+F10運行
alt+shift+F10選擇一個文件運行
end跳轉至結尾
home跳轉至首行
ctrl+delete刪除一個單詞
ctrl+z撤銷
tab縮進4個空格
shift+tab刪除縮進
內存管理
變量是描述世間萬物變化的狀態,python是如何在內存中創建變量的?
引用計數
每把一個變量值賦給一個變量名時,這個變量的引用計數就+1,引用計數是針對變量值而非變量名。
垃圾回收機制
當變量值的引用計數為0時,python有“自動垃圾車”把該變量值“收走”,釋放出變量值原先占有的內存空間。
小整數池
[-5~256]之間的整數由於經常會用到,所以在python啟動的時候,會自動開辟出一塊內存空間用來存放這些小整數,相當於自帶工具箱,每次使用小整數的時候就直接從工具箱中取出,在用完之后不會刪除。
變量
變量是變化的量,量是用來描述一種狀態,變代表變化,所以變量就是一個會變化的狀態
什么是變量
name = qwer
name是變量名,=是賦值符號,qwer是變量值
為什么要有變量
變量可以描述名字、身高、體重等等,可以儲存世間萬事萬物的狀態。
變量命名的規范
- 變量名要具有某種意義,不能是毫無意義的亂字符
- python的變量名只能由字母、數字、下划線構成,且第一個字符不能是數字或下划線
- 變量名不能是關鍵字,例如if、while、and等等
定義變量有兩種風格:下划線體(name_mao)和駝峰提(NameMao),下划線和單詞首字母大寫是為了區分英文單詞。
常量
常量是固定不變的量,python中沒有嚴格意義上的常量,最好不要更改。定義方式為全字母大寫。
注釋
注釋是為現在編寫的代碼的一個解釋,用來標記信息,方便以后查看和理解之前的代碼,快捷鍵為ctrl+/
單行注釋用#,多行代碼用‘’‘(此處有多行)’‘’或“”“(此處有多行)”“”
數字類型
整形:整數
- 作用:描述卡號、身份證號等
- 定義方式:height = 180
- 使用方法:+ - * / % //等
浮點型:帶小數點的數,描述薪資等
- 作用:工資7000.5元,商品52.5元
- 定義方式:salary = 7000.5
- 使用方法:+ - * / % //等
字符串類型:一般不用做計算的字符
- 作用:名字等
- 定義方式:name = ‘mao‘
name = “mao”
name = ’‘’
mao
mao
mao
‘’‘ - 用法:同數據類型的字符串可以組合在一起
列表
定義方式:中括號[],括號內使用逗號分隔開多個元素,元素可以為任何數據類型,
使用方式:數位取值,列表內數位正向為0,1,2....逆向為.....-3,-2,-1
字典
定義方式:大括號{},括號內以key:value的形式存放在{}內,並以逗號切割,且key一般為字符串並有某種意義,value值可以為任何數據類型。
使用方式:索引取值
布爾數據類型
true or false
布爾類型一般不用於print或者定義變量。除了0、null、空、false都自帶布爾值為true