Python學習【day02】- Python基礎練習題

  1 #!/usr/bin/env python
  2 # -*- coding:utf8 -*-
  3 
  4 # 執行Python 腳本的兩種方式
  5 # 答:①在windows的cmd窗口下 > D:/Python/python.exe D:/ex.py
  6 #    ②配置環境變量後,在ide編輯器下直接運行
  7 
  8 # 簡述位、字節的關係
  9 # 答:一個字節byte是八位bit
 10 
 11 # 簡述 ascii、unicode、utf-八、gbk 的關係
 12 # 答:ascii只能正確識別英文,對中文沒法識別,8位
 13 #    unicode俗稱萬國碼,最少是16位,能夠識別中文,可是若爲一個英文字母浪費空間,中文佔2個字節
 14 #    utf-8根據字符的實際佔用空間,中文佔3個字節
 15 #    gbk可識別中文,國內本身的編碼
 16 
 17 # 請寫出"李傑"分別用utf-8和gbk編碼所佔的位數
 18 # 答:一箇中文utf-8佔3個字節24位,gbk佔2個字節16位
 19 #    李傑 utf-8佔48位、gbk佔32位
 20 
 21 # Pyhton 單行註釋和多行註釋分別用什麼
 22 # 答:單行註釋>'#XXXXXX',多行註釋>' """XXXXXX""" '
 23 
 24 # 聲明變量注意事項有那些
 25 # 答:數字、字母、下劃線組成,且不能夠數字開頭,不要用關鍵字、內部函數名
 26 
 27 # 若有一個變量n1 = 5,請使用 int 的提供的方法,獲得該變量最少能夠用多少個二進制位表示
 28 n1 = 5
 29 v1 = n1.bit_length()
 30 print(v1)
 31 
 32 # 布爾值分別有什麼
 33 # 答:True和False,邏輯判斷
 34 
 35 # 閱讀代碼,請寫出執行結果
 36 #     
 37 #     a  =  "alex"
 38 #     b  =  a.capitalize()  #首字母大寫
 39 #     print(a)
 40 #     print(b)
 41 #     請寫出輸出結果:alex      Alex
 42 
 43 # 寫代碼,有以下變量,請按照要求實現每一個功能
 44 #     name = "  aleX"
 45 name = "  aleX"
 46 #     a.  移除 name 變量對應的值兩邊的空格,並輸入移除後的內容
 47 v1 = name.strip()
 48 print(v1)
 49 #     b.  判斷 name 變量對應的值是否以  "al"  開頭,並輸出結果
 50 v1 = name.startswith("al")
 51 print(v1)
 52 #     c.  判斷 name 變量對應的值是否以  "X"  結尾,並輸出結果
 53 v1 = name.endswith("X")
 54 print(v1)
 55 #     d.  將 name 變量對應的值中的  「l」  替換爲  「p」,並輸出結果
 56 v1 = name.replace("l", "p")
 57 print(v1)
 58 #     e.  將 name 變量對應的值根據  「l」  分割,並輸出結果
 59 v1 = name.split("l")
 60 print(v1)
 61 #     f.  請問,上一題  e  分割以後獲得值是什麼類型(可選)
 62 t = type(v1)
 63 print(t)
 64 #     g.  將 name 變量對應的值變大寫,並輸出結果
 65 v1 = name.upper()
 66 print(v1)
 67 #     h.  將 name 變量對應的值變小寫,並輸出結果
 68 v1 = name.lower()
 69 print(v1)
 70 #     i.  請輸出 name 變量對應的值的第 2 個字符?
 71 print(name[1])
 72 #     j.  請輸出 name 變量對應的值的前 3 個字符?
 73 print(name[0:3])
 74 #     k.  請輸出 name 變量對應的值的後 2 個字符?
 75 print(name[len(name) - 2], name[len(name) - 1])
 76 #     l.  請輸出 name 變量對應的值中  「e」  所在索引位置?
 77 v1 = name.find("e")
 78 print(v1)
 79 #     m.  獲取子序列,僅不包含最後一個字符。如:  oldboy  則獲取  oldbo;  root  則獲取  roo
 80 print(name[0:len(name)-1])
 81 
 82 # 2一、字符串是否可迭代對象?如能夠請使用 for 循環每個元素?
 83 for s in name :
 84     print(s)
 85 
 86 # 2二、請用代碼實現:
 87 #     a.  利用下劃線將列表的每個元素拼接成字符串,li  =  "alexericrain"
 88 li = "alexericrain"
 89 v1 = "_".join(li)
 90 print(v1)
 91 #     b.  利用下劃線將列表的每個元素拼接成字符串,li  =  ['alex',  'eric',  'rain']    (可選)
 92 li = ['alex', 'eric', 'rain']
 93 v1 = "_".join(li)
 94 print(v1)
 95 
 96 # Python2 中的 range 和 Python3 中的 range 的區別?
 97 # 答:Python2 Python3中range自動增長可設置範圍和步長
 98 
 99 # 2四、實現一個整數加法計算器:
100 #     如:
101 #         content  =  input('請輸入內容:')    #  如:  5+9  或  5+  9  或  5  +  9  
102 """
103 content = input("請輸入內容:")
104 v1 = content.split("+")
105 print(v1)
106 s = 0
107 for v in v1 :
108     vv = int(v)
109     s += vv
110 print(s)
111 """
112 
113 # 2五、計算用戶輸入的內容中有幾個十進制整數?幾個字母?
114 #     如:
115 #         content  =  input('請輸入內容:')    #  如:asduiaf878123-¥jkjsfd213928
116 """
117 content = input("請輸入內容:")
118 intS = 0
119 charS = 0
120 for c in content :
121     if c.isdigit() :
122         intS += 1
123         continue
124     if c.isalpha() :
125         charS += 1
126 print(intS, charS)
127 """
128 
129 # 2六、簡述  int  和  9  等數字   以及   str  和  "xxoo"  等字符串的關係?
130 # 答:9是int的一個具體實例,"xxoo"是str類型的具體實例
131 
132 # 2七、製做趣味模板程序
133 #     需求:等待用戶輸入名字、地點、愛好,根據用戶的名字和愛好進行任意現實
134 #          如:敬愛可親的 xxx,最喜歡在 xxx 地方幹 xxx
135 """
136 name = input("姓名:")
137 addr = input("地點:")
138 like = input("愛好:")
139 print(name, "喜歡在", addr, like)
140 """
141 
142 # 2八、製做隨機驗證碼,不區分大小寫。
143 #     流程:
144 #         -­‐  用戶執行程序
145 #         -­‐  給用戶顯示須要輸入的驗證碼
146 #         -­‐  用戶輸入的值
147 #             用戶輸入的值和顯示的值相同時現實正確信息;不然繼續生成隨機驗證碼繼續等待用戶輸入
148 #         生成隨機驗證碼代碼示例:
149 """
150 def check_code() :
151     import random
152     checkCode = ""
153     for i in range(4) :
154         current = random.randrange(0, 4)
155         if current != i :
156             temp = chr(random.randint(65, 90))
157         else :
158             temp = random.randint(0, 9)
159         checkCode += str(temp)
160     return checkCode
161 while True :
162     code = check_code()
163     content = input("請輸入驗證碼(" + code + "):")
164     if code == content :
165         break
166 print("success")
167 """
168 
169 # 2九、開發敏感詞語過濾程序,提示用戶輸入內容,若是用戶輸入的內容中包含特殊的字符:
170 #     如  "蒼老師"  "東京熱",則將內容替換爲  ***
171 """
172 content = input("請輸入:")
173 c = ""
174 if content.find("蒼老師") != -1:
175     c = content.replace("蒼老師", "***")
176 print(c)
177 """
178 
179 # 30、製做表格  
180 #     循環提示用戶輸入:用戶名、密碼、郵箱  (要求用戶輸入的長度不超過 20 個字符,若是超過則只有前 20 個字符有效)
181 #     若是用戶輸入  q 或 Q  表示再也不繼續輸入,將用戶輸入的內容以表格形式大隱
182 s = "name\tpassword\temail\n"
183 while True :
184     name = input("請輸入用戶名(不可超過20個字符,若超過只取前20個):")
185     if name == "q" or name == "Q" :
186         break
187     name = name[0:20]
188     password = input("請輸入密碼(不可超過20個字符,若超過只取前20個):")
189     password = password[0:20]
190     email = input("請輸入郵箱(不可超過20個字符,若超過只取前20個):")
191     email = email[0:20]
192     s += (name + "\t" + password + "\t" + email + "\n")
193 ss = s.expandtabs(20)
194 print(ss)
相關文章
相關標籤/搜索