1. 程式人生 > >執行python程式的兩種方式、變數以及記憶體管理

執行python程式的兩種方式、變數以及記憶體管理

1、執行python程式有兩種方式
I:互動式
優點:除錯程式
缺點:無法永久儲存程式碼

II:命令列的方式
python3 D:\p1.py
優點:可以永久儲存程式碼
缺點:相對於方式一在操作上稍有難度(需要安裝開發工具,如:pycharm,VScode)

2、python執行程式的三個階段:python3 D:\p1.py
1、先啟動python3直譯器
2、python3直譯器就像一個文字編輯器一樣將檔案內容D:\p1.py從硬碟讀入記憶體
3、python3直譯器解釋執行檔案程式碼
強調:只有第三個階段才識別python的語法

3、變數

    a、什麼是變數

        變:現實世界中的狀態是會發生改變的
        量:衡量/記錄現實世界中的狀態,讓計算機能夠像人一樣去識別世間萬物

    b、為什麼要有變數
        程式執行的本質就是一系列狀態的變化

4、如何用變數
一:定義變數

 name='abc'
 age=18
 sex='male'
 height=1.81
 weight=160

總結:定義變數分為三部分
1、變數名:變數名用來引用變數值的。即但凡要用變數值,都需要通過變數名
2、賦值符號

:賦值
3、變數值:即我們存放的資料,是用來記錄現實世界中的某種狀態的

二:變數名的命名規範
大前提:變數名的命名應該能反映變數值所記錄的狀態
1. 變數名只能是 字母、數字或下劃線的任意組合
2. 變數名的第一個字元不能是數字
3. 關鍵字不能宣告為變數名

 username='egon'
 print(username)
 user_name='egon'

三:變數名的的兩種風格
1、駝峰體
 AgeOfOldboy=73
2、下劃線(針對變數名的命名風格,推薦使用下劃線+純小寫字母)
 age_of_oldboy=84

四:常量:不變的量
強調:在python中沒有從語法意義上去強制性定義常量
如果在python中需要定義常量,那應該將變數名全改為大寫

AGE_OF_OLDBOY=84
AGE_OF_OLDBOY=85

 print(AGE_OF_OLDBOY)

5、python的記憶體管理

# 引用計數增加
coding:utf-8 
x=10  #10身上的引用計數加1
y=x   #2

# 引用計數減少:
coding:utf-8 
x=11 #10身上的引用計數減少1
del y #del的意思是解除繫結,10身上的引用計數減少1

引用計數一旦為0,就是垃圾,會被python的垃圾回收機制自動回收

python的內建功能id(),每一個變數值都有其記憶體地址,而id是用來反映變數值在記憶體中的位置的,記憶體地址不同id則不同

 x='info:<name:abc age:18 &/-=>'
 y='info:<name:abc age:18 &/-=>'
 print(id(x))
 print(id(y))

 x=10
 y=10

 print(id(x))
 print(id(y))

 x='abc'
 y='123'
 print(id(x))

 print(id(y))

6、定義變數的三個特徵

x='egon'
print(id(x))

# 型別
print(type(x))

# 值
print(x)

判斷值是否相等:==

 name1='egon'
 name2='egon'
 print(name1 == name2)

判斷id是否相等:is

x=11
y=x
print(x == y)
print(x is y)

總結:
1、id相等,值一定相等
2、值相等,id卻不一定一樣