【python】基礎知識練習題一,python練習題
1、執行Python指令碼的兩種方式
1、pyhon解譯器 python zhurui.py
2、簡述位、位元組的關係
8位一個位元組
3、簡述ascii、unicode、utf-‐8、gbk的關係 4、請寫出 “朱銳” 分別用utf-‐8和gbk編碼所佔的位元
一個漢字 utf-8佔3個位元組,utf-8:6 gbk:4
5、Pyhton單行注釋和多行注釋分別用什嗎? 6、聲明變數注意事項有那些? 7、如有一下變數n1 = 5,請使用int的提供的方法,得到該變數少可以用多少個二進位位表示? 8、布爾值分別有什嗎? 9、閱讀代碼,請寫出執行結果
a = "zhurui"b = a.capitalize()print(a)print(b)
10、寫代碼,有如下變數,請按照要求實現每個功能
name = " zhuRui"
a. 移除name變數對應的值兩邊的空格,並輸入移除後的內容
b. 判斷name變數對應的值是否以 "al" 開頭,並輸出結果
c. 判斷name變數對應的值是否以 "X" 結尾,並輸出結果
d. 將name變數對應的值中的 “l” 替換為 “p”,並輸出結果
e. 將name變數對應的值根據 “l” 分割,並輸出結果。
f. 請問,上一題 e 分割之後得到值是什麼類型(可選)?
g. 將name變數對應的值變大寫,並輸出結果
h. 將name變數對應的值變小寫,並輸出結果
i. 請輸出name變數對應的值的第2個字元?
j. 請輸出name變數對應的值的前3個字元?
k. 請輸出name變數對應的值的後2個字元?
l. 請輸出name變數對應的值中 “e” 所在索引位置?
m. 擷取子序列,僅不包含後一個字元。如: oldboy 則擷取 oldbo; root 則擷取 roo
11、字串是否可迭代對象?如可以請使用for迴圈每一個元素? 12、請用代碼實現:
a. 利用底線將列表的每一個元素拼接成字串,li = "alexericrain"
b. 利用底線將列表的每一個元素拼接成字串,li = ['alex', 'eric', 'rain'] (可選)
v = "_".join("dsgewrerwewerwe")v = '"_".join(['zhurui','zhurui1']) "zhurui_zhurui1"13、Python2中的range和Python3中的range的區別?
python2:直接建立
range: 立即建立
xrange: 相當於python3中的range,python3中捨棄
python3:執行range後,首先放到記憶體中,只有執行for迴圈迭代的時候才一個一個會建立;不執行for迴圈,永遠不會建立;
14、實現一個整數加法計算機:
如:
content = input('請輸入內容:')
# 如: 5+9 或 5+ 9 或 5 + 9
input: 字串 "5+9"value = "5+9"v1,v2 = value.split('+')v1 = int(v1)v2 = int(v2)v1 + v2
15、計算使用者輸入的內容中有幾個十進位小數?幾個字母?
如:
content = input('請輸入內容:') # 如:asduiaf878123jkjsfd-‐213928
c1 = 0c2 = 0val = input('>>>>')for item in val: # 如果item是數字: c1 += 1 # 如果item是字母: c2 += 1
16、簡述 int 和 9 等數字 以及 str 和 "xxoo" 等字串的關係?
int:7 8 9
str: zhurui
bool:True False
總結:int,str,bool相當於類,而冒號後面的就相當於對象,實屬類和對象的關係;
17、製作趣味模板程式
需求:等待使用者輸入名字、地點、愛好,根據使用者的名字和愛好進行任意現實
如:敬愛可親的xxx,喜歡在xxx地方幹xxx
template = "adgegeewrerweew{0}.,ggerewgw{1}"
name = input(">>>>>>>")
v = template.format("zhurui",18)
18、製作隨機驗證碼,不區分大小寫。
流程:
-‐ 使用者執行程式
-‐ 給使用者顯示需要輸入的驗證碼
-‐ 使用者輸入的值
使用者輸入的值和顯示的值相同時現實正確資訊;否則繼續產生隨機驗證碼繼續等待使用者輸入
產生隨機驗證碼程式碼範例:
while True: code = check_code() print(code) v = input(">>>>>")
19、開發敏感詞語過濾程式,提示使用者輸入內容,如果使用者輸入的內容中包含特殊的字元:
如 "蒼老師" "東京熱",則將內容替換為 ***
v = "erewewrew"
v = v.replase('s',"rewerwer")
v = v.replase('a',"rewerwer")
print(v)
主要考查:字串replase替換方法;
20、製作表格
迴圈提示使用者輸入:使用者名稱、密碼、郵箱 (要求使用者輸入的長度不超過20個字元,如果超過則只有前20個字元有效)
如果使用者輸入 q或Q 表示不再繼續輸入,將使用者輸入的內容以表格形式大隱
expandtabs
len
[0:20]
s = ""while True: v1 = input(">>>") v2 = input(">>>") v3 = input(">>>") template = "{0}\t{1}\t{2}\n{0}\t{1}\t{2}\n{0}\t{1}\t{2}\n" v = template.format(v1,v2,v3) s = s + v breakprint(s.expandtabs(20))