1.執行Python腳本的兩種方式
1.在計算機終端(運行cmd),輸入安裝的Python路徑,然后輸入Python腳本的路徑,回車。
2.直接運行python
2.簡述位、字節的關系。
1字節 = 8位二進制
3.簡述ASCII,Unicode,utf-8, gbk 的關系
ascll是國際標准編碼,8位二進制表示一個字符,最先產生
Unicode是萬國碼,通用,16位二進制表示一個字符
utf - 8,能用多少位表示就用多少位,3個字節表示中文,可以和Unicode互相轉換
gbk 是為漢字發明,2個可以表示中文,可以和Unicode互相轉換
4.請寫出“李傑”分別用utf - 8和gbk編碼所占的位數
48和32
5.Python單行注釋和多行注釋分別用什么表示
單行注釋:#
多行注釋:""" """
6.聲明變量注意事項有哪些
1.不能用數字開頭
2.不能是python的關鍵字
3.不要和python內置的東西重復
4.讓變量名盡量有意義些
7.如以下變量n = 5,請使用int方法,得到該變量最少可以用多少個二進制位表示
n = 5 v = n.bit_length() print(v)
8.布爾值分別有什么
True 和False
9.閱讀代碼,請寫出執行結果。
a = "alex" b = a.capitalize() print(a) print(b)
alex 和Alex
10.寫代碼,有如下變量,請按照要求實現每個功能
name = " aleX"
a.移除name變量對應的值兩邊的空格,並輸入移除后的內容
n = " aleX" v = n.lstrip() print(v)
b.判斷name變量對應的值是否以“al”開頭,並輸出結果
n = " aleX" v = n.startswith("al") print(v)
c.判斷name變量對應的值是否以“X”結尾
n = " aleX" v = n.endswith("X") print(v)
d.將name變量對應的值中的“X”替換為“p”
n = " aleX" v = n.replace("X","p") print(v)
e. 將name變量對應得值根據“l”分割
n = " aleX" v = n.split("l") print(v)
f. 請問上一題e分割后得到的值是什么類型
列表類型(list)
g.將name變量對應得值變大寫
n = " aleX" v = n.upper() print(v)
h.將name變量對應得值變小寫
n = " aleX" v = n.lower() print(v)
i. 請輸出name變量對應的值的第二個字符
n = " aleX" v = n[1] print(v)
是空格
j. 請輸出name變量對應的值的前三個字符
n = " aleX" v = n[0:3] print(v)
空格 空格 a
k. 請輸出name變量對應的后兩個字符
n = " aleX" v = n[4:6] print(v)
l. 請輸入name變量中的“e”所在的索引位置
n = " aleX" count = 0 for i in n: while i == 'e': print(count) break count = count + 1
m. 獲取子序列,僅不包含最厚一個字符。
n = " aleX" v = n[:-1] print(v)
21. 字符串是否是可迭代對象?
是,可以用for循環每一個元素
22.請利用代碼實現
a.利用下划線將列表的每一個元素拼接成字符串,li = "sadqasfqwefgwg"
n = "wsdgfsdgfg" v = "_".join(n) print(v)
23. python2中的range和python3中的區別
python2中的range在循環后直接創建對象,python3中,在for 循環時才一個一個創建,Python2中有xrange,效果和python3中的range效果一樣
24.實現一個整數加法計算器
count = input("請輸入內容:") a, b = count.split("+") print(int(a)+int(b))
25. 計算用戶輸入的內容中有幾個十進制小數,幾個字母?
count = input("請輸入內容:") num = 0 al = 0 for i in count: n = i if n.isalpha(): al +=1 if n.isdecimal(): num +=1 print("字母有%d個,數字有%d個"%(al,num))
26.簡述 int 和9等數字,以及str和“ooxx”等字符串的關系?
int str 這些叫類或類型,而9和“ooxx”都是根據相應類型創建的對象
27.制作趣味模板程序
需求:等待用戶輸入名字、地點、愛好,實現:敬愛可親的xxx,最喜歡在xxx干xxx.
info = input("請輸入你的姓名,地點,愛好(中間用逗號隔開):")
a = info.split(",")[0]
b = info.split(",")[1]
c = info.split(",")[2]
print("敬愛的{0}最喜歡在{1}{2}".format(a,b,c))
28. 制作隨機驗證碼,不區分大小寫。
流程:用戶執行程序
給用戶顯示需要輸入的驗證碼
用戶輸入的值:用戶數入的值和顯示值相同時,顯示正確信息。否則繼續生成隨機驗證碼。
def check_code(): import random checkcode = "" for i in range(4): current = random.randrange(0, 4) if current != i: temp = chr(random.randint(65, 90)) else: temp = random.randint(0, 9) checkcode = str(temp) return checkcode while True: code = check_code() code1 = code.lower() print(code1) ver_code = input("請輸入上面驗證碼:") ver_code1 = ver_code.lower() if ver_code1 == code1: print("我喜歡你") break
29.開發敏感詞匯過濾程序,提示用戶輸入內容,如果用戶輸入的內容中包含特殊的字符:如“蒼老師” "東京熱" 則將內容替換為 ***
v = input("請輸入內容:") v = v.replace("蒼老師", "***")
v = v.replace("東京熱", "***") print(v)
30.制作表格
循環提示用戶輸入:用戶名、密碼、郵箱(要求用戶輸入的長度不超過20個字符,如果超過則只有20個字符有效)
如果用戶輸入q或Q表示不再繼續輸入,將用戶輸入的內容以表格形式打印
s = "" while True: name = input("請輸入用戶名:")[0:21] if name == "q" or name == "Q": break1 ser = input("請輸入密碼:")[0:21] mal = input("請輸入郵箱:")[0:21] info = "{0}\t{1}\t{2}\n" v = info.format(name, ser, mal) s = s + v print(s.expandtabs(20))
注意:結束程序的那個判斷,if name = "q" or name = "Q" Q在python里永遠為True,