標籤:get abc tar utf-8 res value 返回 設定 提示
習題1:
設定一個使用者名稱和密碼,使用者輸入正確的使用者名稱和密碼,則顯示登入成功,否則提示登入失敗,使用者最多失敗3次,否則退出程式。
提示:使用while或者for來限定重試的次數,使用input擷取使用者輸入使用?==判斷使用者的使用者名稱和密碼。
#encoding=utf-8
方式1:
username = "hhq"password ="123456"for i in range(3): user = input("please input the username: ") passwd = input("please input the passwd: ") if user == username and passwd == password: print("guess ok") break else: print("guess error") if i ==2:#輸錯3次退出 print("input times is used out! bye!!")
方式2:
username = "hhq"password ="123456"for i in range(3): user = input("please input the username: ") passwd = input("please input the passwd: ") if user == username and passwd == password: print("guess ok") break else: print("guess error")else:print("input times is used out! bye!!")
習題2:
自己實現一個函數,在一句話中尋找某個單詞的演算法,存在返回索引號,否則返回False
提示:使用句子中的座標遍曆句子的每一個位置,使用尋找單詞的長度結合使用切片來尋找單詞。例如:s[i:i+len(單詞)]
def findWord(s,word): length = len(word) for i in range(len(s)-length+1): if s[i:i+length] == word: return i return -1print(findWord("I am a good boy","good"))print(findWord("I am good","good"))
習題3:
隨機產生一個整數,1-100之間你最多猜5次,如果猜大了,提示大了小了,提示小了,猜對了,提示猜中。5次都沒猜中,就猜沒猜中。
import randomtarget_num = random.randint(1,100)for i in range(5): user_input_num = int(input("請輸入你猜的數字: ")) if target_num == user_input_num: print("你猜中了,數字是:",user_input_num) print("你猜了%d 次" %i+1) break elif target_num > user_input_num: print("你猜小了") else: print("你猜大了") if i==4: print("5次機會用光了 Bye")
習題4:
使用while,計算隨機數之和,超過100的時候,停止程式。隨機數1-20的範圍產生,要求記錄一下產生的隨機數,以及最後的和,以及隨機數的個數。
方式1:
import randomresult =0random_num_list =[]while 1: random_num = random.randint(1,20) random_num_list.append(random_num ) result+=random_num if result >100: breakprint("一共產生了 %s 個隨機數:" %len(random_num_list))print("產生隨機數如下:",random_num_list)print("最後的隨機數之和:",result)
方式2:
#encoding=utf-8import randomresult = 0number_list = []while result <= 100: num = random.randint(1,20) number_list.append(num) result += numprint("產生的隨機數:",number_list)print("隨機數的和:",result)print("隨機數的個數:",len(number_list))
習題5:
遍曆字串、列表,分別基於位置和和基於字元遍曆
#encoding=utf-8import randoms = "abc"for i in s: print(i)for i in range(len(s)):print(s[i])l = [1,2,3]for i in l: print(i)for i in range(len(l)):print(l[i])
習題6:
遍曆一個列表中的嵌套列表和元組的所有元素,將1-12的數字進行輸出![[[1,2,3],4,5],7,8,(9,10,(11,12))]
import randoml = [[[1,2,3],4,5],7,8,(9,10,(11,12))]for value in l: if isinstance(value,(list,tuple)): for v in value: if isinstance(v,(list,tuple)): for j in v: print(j) else: print(v) else: print(value)
python學習(6)