day02-數據類型

'''練習題:''''''    一、有變量name = "aleX leNb" 完成以下操做:'''# name = "aleX leNb"'''       1)  移除 name 變量對應的值兩邊的空格,並輸出處理結果'''# name1 = (name.strip())# print(name1)'''       2)  移除name變量左邊的"al"並輸出處理結果'''# name2 = name.lstrip('al')# print(name2)'''       3)  移除name變量右面的"Nb",並輸出處理結果'''# name3 = name.rstrip('Nb')# print(name3)'''       4)  移除name變量開頭的a"與最後的"b",並輸出處理結果'''# name4 = name.lstrip('a').rstrip('b')# print(name4)'''       5)  判斷 name 變量是否以 "al" 開頭,並輸出結果'''# if name.startswith('al'):#  print('%s是以al開頭' % (name))# else:#  print('%s不是以al開頭' % (name))'''       6)  判斷name變量是否以"Nb"結尾,並輸出結果'''# if name.endswith('Nb'):#  print('%s是以Nb結尾' % (name))# else:#  print('%s不是以Nb結尾' % (name))'''       7)  將 name 變量對應的值中的 全部的"l" 替換爲 "p",並輸出結果 '''# name7=name.replace('l','p')# print(name7)'''       8)  將name變量對應的值中的第一個"l"替換成"p",並輸出結果'''# name8 = name.replace('l', 'p', 1)# print(name8)'''       9)  將 name 變量對應的值根據 全部的"l" 分割,並輸出結果。'''# name9 = name.split('l')# print(name9)'''       10) 將name變量對應的值根據第一個"l"分割,並輸出結果。 '''# name10 = name.split('l', 1)# print(name10)'''       11) 將 name 變量對應的值變大寫,並輸出結果'''# name11 = name.upper()# print(name11)'''       12) 將 name 變量對應的值變小寫,並輸出結果'''# name12 = name.lower()# print(name12)'''       13) 將name變量對應的值首字母"a"大寫,並輸出結果'''# name13 = name[0].upper()+name[1:]# print(name13)# name.capitalize()'''       14) 判斷name變量對應的值字母"l"出現幾回,並輸出結果'''# count14 = name.count('l')# print(count14)'''       15) 若是判斷name變量對應的值前四位"l"出現幾回,並輸出結果'''# count15 = name[0:4].count('l')# print(count15)'''       16) 從name變量對應的值中找到"N"對應的索引(若是找不到則報錯),並輸出結果'''# print(name.index('N'))'''       17) 從name變量對應的值中找到"N"對應的索引(若是找不到則返回-1)輸出結果'''# print(name.find('N'))'''       18) 從name變量對應的值中找到"X le"對應的索引,並輸出結果'''# print(name.find("X le"))'''       19) 請輸出 name 變量對應的值的第 2 個字符? '''# print(name[1])'''       20) 請輸出 name 變量對應的值的前 3 個字符? '''# print(name[0:3])'''       21) 請輸出 name 變量對應的值的後 2 個字符?'''# print(name[-2:])'''       22) 請輸出 name 變量對應的值中 "e" 所在索引位置?'''# print(name.find('e'))'''    二、有字符串s = "123a4b5c" '''# s = "123a4b5c"'''       1)經過對s切片造成新的字符串s1,s1 = "123" '''# s1 = s[:3]# print(s1)'''       2)經過對s切片造成新的字符串s2,s2 = "a4b" '''# s2 = s[3:6]# print(s2)'''       3)經過對s切片造成新的字符串s3,s3 = "1345" '''# s3 = s[::2]# print(s3)'''       4)經過對s切片造成字符串s4,s4 = "2ab" '''# s4 = s[1:-2:2]# print(s4)'''       5)經過對s切片造成字符串s5,s5 = "c" '''# s5 = s[-1:-2:-1]# print(s5)'''       6)經過對s切片造成字符串s6,s6 = "ba2" '''# s6 = s[-3::-2]# print(s6)'''    三、使用while或for循環分別打印字符串s="asdfer"中每一個元素。'''# s="asdfer"# i = 0# while i < len(s):#     print(s[i])#     i += 1# s="asdfer"# for i in s:#     print(i)'''    四、使用for循環對s="asdfer"進行循環,可是每次打印的內容都是"asdfer"。'''# s="asdfer"# for i in s:#     print(s)'''    五、使用for循環對s="abcdefg"進行循環,每次打印的內容是每一個字符加上sb, 例如:asb, bsb,csb,...gsb。'''# s="abcdefg"# for i in s:#     print(i + 'sb')'''    六、使用for循環對s="321"進行循環,打印的內容依次是:"倒計時3秒","倒計時2秒","倒計時1秒","出發!"。'''# s="321"# for i in s:#     if i == "1":#         print('倒計時%s秒,出發' % (i))#     else:#         print('倒計時%s秒' % (i))'''    七、實現一個整數加法計算器(兩個數相加):      如:content = input("請輸入內容:") 用戶輸入:5+9或5+ 9或5 + 9,而後進行分割再進行計算。'''# summation = input("請輸入內容: ")# sum = int(summation.split('+')[0]) + int(summation.split('+')[1])# print(sum)'''    八、升級題:實現一個整數加法計算器(多個數相加):      如:content = input("請輸入內容:") 用戶輸入:5+9+6 +12+  13,而後進行分割再進行計算。'''# summation = input("請輸入內容: ")# sum = 0# for i in summation.split('+'):#     sum += int(i)# print(sum)'''    九、計算用戶輸入的內容中有幾個整數(以個位數爲單位)。      如:content = input("請輸入內容:")   # 如fhdal234slfh98769fjdla'''# content = input("請輸入內容:")# count = 0# for i in content:#     if i.isdigit():#         count += 1# print(count)'''    十、寫代碼,完成下列需求:      用戶可持續輸入(用while循環),用戶使用的狀況:         輸入A,則顯示走大路回家,而後在讓用戶進一步選擇:         是選擇公交車,仍是步行?         選擇公交車,顯示10分鐘到家,並退出整個程序。         選擇步行,顯示20分鐘到家,並退出整個程序。         輸入B,則顯示走小路回家,並退出整個程序。         輸入C,則顯示繞道回家,而後在讓用戶進一步選擇:         是選擇遊戲廳玩會,仍是網吧?         選擇遊戲廳,則顯示 ‘一個半小時到家,爸爸在家,拿棍等你。’並讓其從新輸入A,B,C選項。         選擇網吧,則顯示‘兩個小時到家,媽媽已作好了戰鬥準備。’並讓其從新輸入A,B,C選項。'''# while True:#     content = input("請輸入您的選項:")#     if content == "A":#         print("走大路回家")#         content1 = input("是選擇公交車,仍是步行? ")#         if content1 == "公交車":#             print("10分鐘到家")#             break#         elif content1 == "步行":#             print("20分鐘到家")#             break#     elif content == "B":#         print("走小路回家")#         break#     elif content == "C":#         print("繞道回家")#         content2 = input("選擇遊戲廳玩會兒,仍是網吧? ")#         if content2 == "遊戲廳":#             print("一個半小時到家,爸爸在家,拿棍等你,請從新選擇。")#         elif content2 == "網吧":#             print("兩個小時到家,媽媽已作好了戰鬥準備,請從新選擇。")'''    十一、寫代碼:計算 1 - 2 + 3 ... + 99 中除了88之外全部數的總和?'''# sum = 0# for i in range(1,100):#  if i == 88:#     continue#  if i % 2 == 1:#      sum += i#  else:#     sum -= i# print(sum)'''    1六、製做趣味模板程序需求:等待⽤戶輸⼊名字、地點、愛好,根據⽤戶的名字和愛好進⾏任意顯示      如:敬愛可親的xxx,最喜歡在xxx地⽅⼲xxx'''# name = input("請輸入您的名字: ")# place = input("請輸入您的地點: ")# hobby = input("請輸入您的愛好: ")# print("敬愛可親的%s,最喜歡在%s幹%s" % (name, place, hobby))'''    1七、等待⽤戶輸⼊內容,檢測⽤戶輸⼊內容中是否包含敏感字符?若是存在敏感字符提示「存在敏感字符請從新輸⼊」,並容許⽤戶從新輸⼊並打印。敏感字符:「⼩粉嫩」、「⼤鐵錘」'''# sensitive_info = ['小粉嫩', '大鐵錘']# while True:#  content = input("請輸入您要搜索的信息: ")#  if content in sensitive_info:#     print("存在敏感字符,請從新輸入")#     continue#  else:#     print(content)#     break'''    1八、寫代碼,有以下列表,按照要求實現每個功能'''      # li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]'''       1)計算列表的長度並輸出'''# print(len(li))'''       2)列表中追加元素"seven",並輸出添加後的列表'''# li.append("seven")# print(li)'''       3)請在列表的第1個位置插入元素"Tony",並輸出添加後的列表'''# li.insert(0,"Tony")# print(li)'''       4)請修改列表第2個位置的元素爲"Kelly",並輸出修改後的列表'''# li[1] = "Kelly"# print(li)'''       5)請將列表l2=[1,"a",3,4,"heart"]的每個元素添加到列表li中,一行代碼實現,不容許循環添加。'''# l2 = [1,"a",3,4,"heart"]# li.extend(l2)# print(li)'''       6)請將字符串s = "qwert"的每個元素添加到列表li中,一行代碼實現,不容許循環添加。'''# s = "qwert"# li.extend(s)# print(li)'''       7)請給列表添加元素"eric",並輸出添加後的列表'''# li.append("eric")# print(li)'''       8)請刪除列表中的第2個元素,並輸出刪除的元素和刪除元素後的列表'''# li.pop(1)# print(li)'''       9)請刪除列表中的第2至4個元素,並輸出刪除元素後的列表'''# del li[1:4]# print(li)'''       10)請將列表全部得元素反轉,並輸出反轉後的列表'''# li.reverse()# print(li)'''       11)請計算出"alex"元素在列表li中出現的次數,並輸出該次數。'''# print(li.count("alex"))'''    1九、寫代碼,有以下列表,利用切片實現每個功能'''# li = [1, 3, 2, "a", 4, "b", 5,"c"]'''          1)經過對li列表的切片造成新的列表l1,l1 = [1,3,2]'''# l1 = li[0:3]# print(l1)'''          2)經過對li列表的切片造成新的列表l2,l2 = ["a",4,"b"]'''# l2 = li[3:6]# print(l2)'''          3)經過對li列表的切片造成新的列表l3,l3 = ["1,2,4,5]'''# l3 = li[::2]# print(l3)'''          4)經過對li列表的切片造成新的列表l4,l4 = [3,"a","b"]'''# l4 = li[1:-2:2]# print(l4)'''          5)經過對li列表的切片造成新的列表l5,l5 = ["c"]'''# l5 = li[-1:]# print(l5)'''          6)經過對li列表的切片造成新的列表l6,l6 = ["b","a",3]'''# l6 = li[-3::-2]# print(l6)'''    20、寫代碼,有以下列表,按照要求實現每個功能。''''''       lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]'''# lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]'''       1)將列表lis中的"tt"變成大寫(用兩種方式)。'''# lis[3][2][1][0] = lis[3][2][1][0].upper()# lis[3][2][1][0] = "TT"'''       2)將列表中的數字3變成字符串"100"(用兩種方式)。'''# lis[3][2][1][1] = "100"# lis[3][2][1].pop(1)# lis[3][2][1].insert(1, "100")'''       3)將列表中的字符串"1"變成數字101(用兩種方式)。'''# lis[3][2][1][2] = 101# lis[3][2][1].pop(2)# lis[3][2][1].insert(2, 101)'''    2一、請用代碼實現:      li = ["alex", "eric", "rain"]      利用下劃線將列表的每個元素拼接成字符串"alex_eric_rain"'''# li = ["alex", "eric", "rain"]# new_str = "_".join(li)# print(new_str)'''    2二、利用for循環和range打印出下面列表的索引.      li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]'''# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]# for i in range(len(li)):#  print(i)'''    2三、利用for循環和range找出100之內全部的偶數並將這些偶數插入到一個新列表中。'''# li = []# for num in range(0,101,2):#  li.append(num)# print(li)'''    2四、利用for循環和range 找出50之內能被3整除的數,並將這些數插入到一個新列表中。'''# li = []# for i in range(50):#  if i % 3 == 0:#     li.append(i)# print(li)'''    2五、利用for循環和range從100~1,倒序打印。'''# for i in range(100,0,-1):#  print(i)'''    2六、利用for循環和range從100~10,倒序將全部的偶數添加到一個新列表中,而後對列表的元素進行篩選,將能被4整除的數留下來。'''# li = []# for i in range(100, 9, -2):#  li.append(i)# for num in li:#  if num % 4 != 0:#     li.remove(num)# print(li)'''    2六、利用for循環和range,將1-30的數字一次添加到一個列表中,並循環這個列表,將能被3整除的數改爲*。'''# li = []# for i in range(1,31):#  li.append(i)# for num in li:#  if num % 3 == 0:#     li[li.index(num)] = "*"# print(li)'''    2七、查找列表li中的元素,移除每一個元素的空格,並找出以"A"或者"a"開頭,並以"c"結尾的全部元素,並添加到一個新列表中,最後循環打印這個新列表。'''      # li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]# li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]# li_new = []# for i in li:#  i = i.strip()#  if i[0].lower() == "a" and i[-1] == "c":#     li_new.append(i)# for s in li_new:#  print(s)'''    2八、開發敏感詞語過濾程序,提示用戶輸入評論內容,若是用戶輸入的內容中包含特殊的字符:      敏感詞列表 li = ["蒼老師", "東京熱", "武藤蘭", "波多野結衣"]      則將用戶輸入的內容中的敏感詞彙替換成等長度的*(蒼老師就替換***),並添加到一個列表中;若是用戶輸入的內容沒有敏感詞彙,則直接添加到上述的列表中。'''# li = ["蒼老師", "東京熱", "武藤蘭", "波多野結衣"]# li_new = []# content = input("請輸入評論: ")# if content in li:#  li_new.append("*" * len(content))# else:#  li_new.append(content)# print(li_new)'''    2九、有以下變量(tu是個元祖),請實現要求的功能'''      # tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])'''          a. 講述元祖的特性'''# 元組是隻讀列表,不能增、刪、改,只能查。'''          b. 請問tu變量中的第一個元素 "alex" 是否可被修改?'''# 不能'''          c. 請問tu變量中的"k2"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素 "Seven"'''# 列表,能夠被修改。# tu[1][2]["k2"].append("Seven")# print(tu)'''          d. 請問tu變量中的"k3"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素 "Seven"'''# 元組,不能夠被修改。'''    30、字典dic,dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}'''dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}'''       a. 請循環輸出全部的key'''# for key in dic.keys():#  print(key)'''       b. 請循環輸出全部的value'''# for value in dic.values():#  print(value)'''       c. 請循環輸出全部的key和value'''# for k,v in dic.items():#  print(k, v)'''       d. 請在字典中添加一個鍵值對,"k4": "v4",輸出添加後的字典'''# dic["k4"] = "v4"# print(dic)'''       e. 請在修改字典中 "k1" 對應的值爲 "alex",輸出修改後的字典'''# dic["k1"] = "alex"# print(dic)'''       f. 請在k3對應的值中追加一個元素 44,輸出修改後的字典'''# dic["k3"].append(44)# print(dic)'''       g. 請在k3對應的值的第 1 個位置插入個元素 18,輸出修改後的字典'''# dic["k3"].insert(0, 18)# print(dic)'''    3一、av_catalog = {         "歐美":{            "www.youporn.com": ["不少免費的,世界最大的","質量通常"],            "www.pornhub.com": ["不少免費的,也很大","質量比yourporn高點"],            "letmedothistoyou.com": ["可能是自拍,高質量圖片不少","資源很少,更新慢"],            "x-art.com":["質量很高,真的很高","所有收費,屌絲請繞過"]         },         "日韓":{            "tokyo-hot":["質量怎樣不清楚,我的已經不喜歡日韓範了","verygood"]         },         "大陸":{            "1024":["所有免費,真好,好人一輩子平安","服務器在國外,慢"]         }      }'''av_catalog = {    "歐美":{       "www.youporn.com": ["不少免費的,世界最大的","質量通常"],      "www.pornhub.com": ["不少免費的,也很大","質量比yourporn高點"],      "letmedothistoyou.com": ["可能是自拍,高質量圖片不少","資源很少,更新慢"],      "x-art.com":["質量很高,真的很高","所有收費,屌絲請繞過"]   },   "日韓":{       "tokyo-hot":["質量怎樣不清楚,我的已經不喜歡日韓範了","verygood"]   },   "大陸":{       "1024":["所有免費,真好,好人一輩子平安","服務器在國外,慢"]   }}'''       a,給此 ["不少免費的,世界最大的","質量通常"]列表第二個位置插入一個  元素:'量很大'。'''# av_catalog["歐美"]["www.youporn.com"].insert(1, "量很大")# print(av_catalog)'''       b,將此 ["質量很高,真的很高","所有收費,屌絲請繞過"]列表的 "所有收費,屌絲請繞過" 刪除。'''# av_catalog["歐美"]["x-art.com"].pop(1)# print(av_catalog)'''       c,將此 ["質量很高,真的很高","所有收費,屌絲請繞過"]列表的 "所有收費,屌絲請繞過" 刪除。'''# av_catalog["歐美"]["x-art.com"].pop(1)# print(av_catalog)'''       d,將此["質量怎樣不清楚,我的已經不喜歡日韓範了","verygood"]列表的 "verygood"所有變成大寫。'''# av_catalog["日韓"]["tokyo-hot"][1] = av_catalog["日韓"]["tokyo-hot"][1].upper()# print(av_catalog)'''       e,給 '大陸' 對應的字典添加一個鍵值對 '1048' :['一天就封了']'''# av_catalog["大陸"]["1048"] = ['一天就封了']# print(av_catalog)'''       f,刪除此"letmedothistoyou.com": ["可能是自拍,高質量圖片不少","資源很少,更新慢"]鍵值對。'''# av_catalog["歐美"].pop("letmedothistoyou.com")# print(av_catalog)'''       g,給此["所有免費,真好,好人一輩子平安","服務器在國外,慢"]列表的第一個元素,加上一句話:'能夠爬下來' ''''''    3二、有字符串"k:1|k1:2|k2:3|k3:4" 處理成字典 {'k':1,'k1':2....}'''# d = {}# s = "k:1|k1:2|k2:3|k3:4"# s1 = s.split("|")# for i in s1:#  a = i.split(":")#  d[a[0]] = a[1]# print(d)'''    3三、元素分類      有以下值li= [11,22,33,44,55,66,77,88,99,90],將全部大於 66 的值保存至字典的第一個key中,將小於 66 的值保存至第二個key的值中。      即: {'k1': 大於66的全部值列表, 'k2': 小於66的全部值列表}'''# li = [11,22,33,44,55,66,77,88,99,90]# dic={"k1":[], "k2":[]}# for i in li:#  if i > 66:#     dic["k1"].append(i)#  elif i < 66:#     dic["k2"].append(i)# print(dic)'''做業:購物車   1. 用戶先給本身的帳戶充錢:好比先充3000元。   2. 頁面顯示 序號 + 商品名稱 + 商品價格,如:         1 電腦 1999         2 鼠標 10         …         n 購物車結算   3. 用戶輸入選擇的商品序號,而後打印商品名稱及商品價格,並將此商品,添加到購物車,用戶還可繼續添加商品。   4. 若是用戶輸入的商品序號有誤,則提示輸入有誤,並從新輸入。   5. 用戶輸入n爲購物車結算,依次顯示用戶購物車裏面的商品,數量及單價,若充值的錢數不足,則讓用戶刪除某商品,直至能夠購買,若充值的錢數充足,則能夠直接購買。   6. 用戶輸入Q或者q退出程序。   7. 退出程序以後,依次顯示用戶購買的商品,數量,單價,以及這次共消費多少錢,帳戶餘額多少。'''# # 商品信息# goods = {"1":{"name":"電腦", "price":1999},#      "2":{'name':"鼠標", 'price':50},#      "3":{'name':"鍵盤", 'price':100}#     }## # 購物車# shopping_cart = {}## # 充值金額判斷# while 1:#  money = input("請輸入您要充值的金額: ")#  if money.isdigit():#     print("充值成功,帳戶現存金額%s" % money)#     break#  else:#     print("非法字符,請從新輸入")## while True:#  for i in goods:#     print(i, goods[i]["name"], goods[i]["price"])#  num = input("請輸入您要購買的商品編號或者輸入n結算或者按Q(q)退出: ")#  if num in goods:#     count = shopping_cart.setdefault(num,0)#     shopping_cart[num] = count + 1##  elif num == "n":#     print("開始結算")#     consum_money = 0#     for a in shopping_cart:#        consum_money += goods[a]["price"]*shopping_cart[a]  # 計算消費總額#     if consum_money > int(money):#        for i in shopping_cart:#           print(i, goods[i]['name'], shopping_cart[i], goods[i]['price'])#        del_num = input("餘額不足,請選擇要刪除多餘的商品編號:")#        if del_num in shopping_cart:#           shopping_cart[del_num] = shopping_cart[del_num] - 1  #減小商品#        if shopping_cart[del_num] == 0:#           shopping_cart.pop(del_num)#     else:#        print("本次消費記錄以下")#        for i in shopping_cart:#           print(goods[i]['name'], shopping_cart[i], goods[i]['price'])#        surplus_money = int(money) - consum_money  # 計算餘額#        print("這次共消費%s,帳戶餘額%s" % (consum_money, surplus_money))#        break#  elif num.lower() == "q":#     print("歡迎下次光臨")#     break##  else:#     print("您輸入的商品不存在")#     continue
相關文章
相關標籤/搜索