1.簡述執行Python程序的兩種方式以及他們的優缺點
答:交互型優點:馬上就能看到結果,排錯方便。交互型缺點:代碼無法保存,斷電即消失
命令型優點:代碼永久保存。命令型缺點:不易排錯
2.簡述Python垃圾回收機制:
答:當刪除變量名或者給變量名重新定義時,pythom的垃圾回收機制會自動將變量值清除
3.對於下述代碼:
x = 10
y = 10
z = 10
del y
10的引用計數為多少?
答:2次
x = 257
y = x
del x
z = 257
x對應的變量值257的引用計數為多少?
答:2次
4.簡述Python小整數池概念
答:為了減少因重復的值對內存的重復利用,python建立了從[-5,256]的小整數池,從python程序啟動開始,就一直存在於內存中,不會被垃圾回收機制回收
5.對於x = 10
,請用Python代碼分別打印變量值、變量值內存地址和變量數據類型:
答:print(x) 10
print(id(x)) 1671390528
print(type(x)) <class 'int'>
6.對於下述代碼:
x = 25
y = x
z = 257
請判斷x、y、z的變量值是否相同?x、y、z的所在的內存地址是否相同?請用python代碼闡述為什么
答:print(f"x的內存id:{id(x)}")
print(f"y的內存id:{id(y)}")
print(f"z的內存id:{id(z)}")
x的內存id:1671390768
y的內存id:1671390768
z的內存id:8772896
7.猜年齡
age = 18
count = 0
hengxian = ("=" * 10)
while count < 3:
print(f"{hengxian}讓我們開始猜年齡的游戲吧!{hengxian}")
get_age = input("請輸入您的年齡:")
# 判斷是否輸入數字
if not get_age.isdigit():
print("請輸入數字!")
break
get_age_int = int(get_age)
if get_age_int == age:
print("你猜中了!!!!!!!!!!!!!!!!!!!!!1")
elif get_age_int > age:
print("你猜的數字大了")
elif get_age_int < age:
print("你猜的小了")