1. 程式人生 > >少說話多寫程式碼之Python學習034——其他語句01(pass,del)

少說話多寫程式碼之Python學習034——其他語句01(pass,del)

pass語句
pass就是什麼都不做,和C#中的一個分號語句很像。
一般用作佔位符,比如,這種情況,就是什麼都不處理。

name=input('請輸入姓名')
if len(name)<3:
    print('做什麼')
elif len(name)==3:
    #沒什麼可做的
    pass
else:
    print("乾點啥")

del語句    
看下面對兩個變數的操作,

name1={'年齡':'16','籍貫':'陝西','姓名':'布任時'}
name2=name1
print(name1)
print(name2)

name1=None
print(name1)
print(name2)

name2=None
print(name1)
print(name2)

輸出

{'年齡': '16', '籍貫': '陝西', '姓名': '布任時'}
{'年齡': '16', '籍貫': '陝西', '姓名': '布任時'}
None
{'年齡': '16', '籍貫': '陝西', '姓名': '布任時'}
None
None

當name1賦值為None時,name2還可以繼續使用,因為並沒有對他們的值做改變,僅僅是將name1的引用去掉了,name1不能找到它的值了。
接下來,將name2也置為None後,這個值:{'年齡':'16','籍貫':'陝西','姓名':'布任時'},就再也沒有變數能找到了,這個值成了記憶體中的無主之物。Python直譯器也可以垃圾回收的。

還有一個辦法刪除這個變數,使用del語句。看下面程式碼,

h=1
#del h
print(h)

del h後,再執行print會報這個錯

Traceback (most recent call last):
  File "D:/work/Python/sentenceOthers.py", line 19, in <module>
    print(h)
NameError: name 'h' is not defined

再看這兩個值,

x=['莫哈莫哈','正晌午時說話,誰也沒有家']
y=x

print(x)
print(y)

del x
#print(x)
y[1]='烏鴉落進了鳳凰群'
print(y)

輸出

['莫哈莫哈', '正晌午時說話,誰也沒有家']
['莫哈莫哈', '正晌午時說話,誰也沒有家']
['莫哈莫哈', '烏鴉落進了鳳凰群']

刪除之後x就不能使用了,但是依然可以使用y,當我們不需要使用y時,可以將y也del掉。

工程檔案下載:https://download.csdn.net/download/yysyangyangyangshan/10759209