''' 1、有變量name = "aleX leNb" 完成如下操作: 1) 移除 name 變量對應的值兩邊的空格,並輸出處理結果 2) 移除name變量左邊的"al"並輸出處理結果 3) 移除name變量右面的"Nb",並輸出處理結果 4) 移除name變量開頭的a"與最后的"b",並輸出處理結果 5) 判斷 name 變量是否以 "al" 開頭,並輸出結果 6) 判斷name變量是否以"Nb"結尾,並輸出結果 7) 將 name 變量對應的值中的 所有的"l" 替換為 "p",並輸出結果 8) 將name變量對應的值中的第一個"l"替換成"p",並輸出結果 9) 將 name 變量對應的值根據 所有的"l" 分割,並輸出結果。 10) 將name變量對應的值根據第一個"l"分割,並輸出結果。 11) 將 name 變量對應的值變大寫,並輸出結果 12) 將 name 變量對應的值變小寫,並輸出結果 13) 將name變量對應的值首字母"a"大寫,並輸出結果 14) 判斷name變量對應的值字母"l"出現幾次,並輸出結果 15) 如果判斷name變量對應的值前四位"l"出現幾次,並輸出結果 16) 從name變量對應的值中找到"N"對應的索引(如果找不到則報錯),並輸出結果 17) 從name變量對應的值中找到"N"對應的索引(如果找不到則返回‐1)輸出結果 18) 從name變量對應的值中找到"X le"對應的索引,並輸出結果 19) 請輸出 name 變量對應的值的第 2 個字符? 20) 請輸出 name 變量對應的值的前 3 個字符? 21) 請輸出 name 變量對應的值的后 2 個字符? 22) 請輸出 name 變量對應的值中 "e" 所在索引位置? ''' # name = "aleX leNb" # print(name.strip()) #1). # print(name[2:]) #2). # print(name[:-2]) #3). # print(name[1:-1]) #4). # print(name.startswith('al')) #5). # print(name.endswith('Nb')) #6). # print(name.replace('l', 'p')) #7). # print(name.replace('l', 'p', 1)) #8). # print(name.split('l')) #9). # print(name.split('l', 1)) #10). # print(name.upper()) #11). # print(name.lower()) #12). # print(name.capitalize()) #13). # print(name.count('l')) #14). # print(name.count('l', 0, 4)) #15). # print(name.index('N')) #16). # print(name.find('N')) #17). # print(name.find('X le')) #18). # print(name[1:2]) #19). # print(name[2:3]) #20). # print(name[-2:]) #21). # print(name.find('e')) #22). ''' 2、有字符串s = "123a4b5c" 1)通過對s切片形成新的字符串s1,s1 = "123" 2)通過對s切片形成新的字符串s2,s2 = "a4b" 3)通過對s切片形成新的字符串s3,s3 = "1345" 4)通過對s切片形成字符串s4,s4 = "2ab" 5)通過對s切片形成字符串s5,s5 = "c" 6)通過對s切片形成字符串s6,s6 = "ba2" ''' # s = "123a4b5c" # s1 = s[:3] #1). # print(s1) # s2 = s[3:6] #2). # print(s2) # s3 = s[::2] #3). # print(s3) # s4 = s[1:6:2] #4). # print(s4) # s5 = s[-1:] #5). # print(s5) # s6 = s[-3::-2] #6). # print(s6) ''' 3、使用while或for循環分別打印字符串s="asdfer"中每個元素。 ''' # s = "asdfer" #while循環 # i = 0 # while i < len(s): # print(s[i]) # i += 1 ''' for循環 ''' # s = "asdfer" # for item in s: # print(item) ''' 4、使用for循環對s="asdfer"進行循環,但是每次打印的內容都是"asdfer"。 ''' # s = "asdfer" # for item in s: # print(s) ''' 5、使用for循環對s="abcdefg"進行循環,每次打印的內容是每個字符加上sb, 例如:asb, bsb, csb,...gsb。 ''' # s = "abcdefg" # for item in s: # print("%ssb" % item) ''' 6、使用for循環對s="321"進行循環,打印的內容依次是:"倒計時3秒","倒計時2秒","倒計時1秒","出 發!"。 ''' # s = "321" # for num in s: # print("倒計時%s秒"%num) # print("出發!") ''' 7、實現一個整數加法計算器(兩個數相加): 如:content = input("請輸入內容:") 用戶輸入:5+9或5+ 9或5 + 9,然后進行分割再進行計算。 ''' # content = input("請輸入兩個數相加:") #方法一 # print(eval(content)) ''' 方法二,使用split() ''' # content = input("請輸入兩個數相加:") # lst = content.split('+') # Sum = 0 # for item in lst: # Sum += int(item.strip()) # print(Sum) ''' 8、升級題:實現一個整數加法計算器(多個數相加): 如:content = input("請輸入內容:") 用戶輸入:5+9+6 + 12+ 13,然后進行分割再進行計算。 ''' # content = input("請輸入多個數相加:") #方法一 # print(eval(content)) ''' 方法二 ''' # content = input("請輸入多個數相加:") # lst = content.split('+') # Sum = 0 # for item in lst: # Sum += int(item.strip()) # print(Sum) ''' 9、計算用戶輸入的內容中有幾個整數(以個位數為單位)。 如:content = input("請輸入內容:") # 如fhdal234slfh98769fjdla ''' # content = input("請輸入內容:").strip() # num = 0 # for item in content: # if item.isdigit(): # num += 1 # print("您一共輸入了"+str(num)+"個整數") ''' 10、寫代碼,完成下列需求: 用戶可持續輸入(用while循環),用戶使用的情況: 輸入A,則顯示走大路回家,然后在讓用戶進一步選擇: 是選擇公交車,還是步行? 選擇公交車,顯示10分鍾到家,並退出整個程序。 選擇步行,顯示20分鍾到家,並退出整個程序。 輸入B,則顯示走小路回家,並退出整個程序。 輸入C,則顯示繞道回家,然后在讓用戶進一步選擇: 是選擇游戲廳玩會,還是網吧? 選擇游戲廳,則顯示 ‘一個半小時到家,爸爸在家,拿棍等你。’並讓其重新輸入A,B,C選項。 選擇網吧,則顯示‘兩個小時到家,媽媽已做好了戰斗准備。’並讓其重新輸入A,B,C選項。 ''' # Flag = True # while Flag: # user_choise = input("請輸入字母ABC中的一個(A:大路,B:小路,C:繞道): ").strip().upper() # #判斷用戶輸入的是否為字母,並且是否是ABC其中的一個 # if user_choise.isalpha() and user_choise in "ABC": # pass # else: # print("輸入有誤,請輸入字母'ABC'中的一個!") # continue # # #根據用戶的選擇做出響應的操作,用戶選擇A的情況 # if user_choise == "A": # print("走大路回家") # while True: # sel_way = input("您是選擇'公交車',還是'步行': ").strip() # if sel_way == "公交車": # print("10分鍾到家") # Flag = False # break # elif sel_way == "步行": # print("20分鍾到家") # Flag = False # break # else: # print("輸入有誤,您是選擇'公交車',還是'步行'") # continue # #用戶選擇B的情況 # elif user_choise == "B": # print("走小路回家") # break # #用戶選擇C的情況 # else: # print("繞道回家") # while True: # sel_play = input("請選擇'游戲廳'玩會,還是'網吧': ").strip() # if sel_play == "游戲廳": # print("一個半小時到家,爸爸在家,拿棍等你。") # break # elif sel_play == "網吧": # print("兩個小時到家,媽媽已做好了戰斗准備。") # break # else: # print("輸入有誤,請選擇'游戲廳'玩會,還是'網吧'") # continue ''' 11、寫代碼:計算 1 - 2 + 3 ... + 99 中除了88以外所有數的總和? ''' # Sum = 0 # for num in range(1,100): # if num == 88: # continue # if num%2 == 1: # Sum += num # else: # Sum -= num # print(Sum) ''' 16、制作趣味模板程序需求:等待用戶輸入名字、地點、愛好,根據用戶的名字和愛好進行任意現實 如:敬愛可親的xxx,最喜歡在xxx地方干xxx ''' # username = input("請輸入您的姓名: ").strip() # address = input("請輸入您的地址: ").strip() # hobby = input("請輸入您的愛好: ").strip() # print("敬愛可愛的%s,最喜歡在%s這個地方%s"%(username, address, hobby)) ''' 17、等待用戶輸入內容,檢測用戶輸入內容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符請重 新輸入”,並允許用戶重新輸入並打印。敏感字符:“小粉嫩”、“大鐵錘” ''' # while True: #方法一 # contents = input("請輸入您的內容: ") # if "小粉嫩" in contents or "大鐵錘" in contents: # print("存在敏感字符,請重新輸入您的內容!") # continue # else: # print("您的內容: %s,發表成功!"%contents) # break ''' 方法二 (列表,可用於檢測多個敏感字符的情況) ''' # sensitive_lis = ["小粉嫩", "大鐵錘"] # # contents = input("請輸入您的內容: ") # i = 0 # while i < len(sensitive_lis): # if sensitive_lis[i] in contents: # print("存在敏感字符,請重新輸入您的內容.") # contents = input("請輸入您的內容: ") # i = 0 # continue # i += 1 # print("您的內容: %s,發表成功!"%contents) ''' 18、寫代碼,有如下列表,按照要求實現每一個功能 li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] 1)計算列表的長度並輸出 2)列表中追加元素"seven",並輸出添加后的列表 3)請在列表的第1個位置插入元素"Tony",並輸出添加后的列表 4)請修改列表第2個位置的元素為"Kelly",並輸出修改后的列表 5)請將列表l2=[1,"a",3,4,"heart"]的每一個元素添加到列表li中,一行代碼實現,不允許循環添加。 6)請將字符串s = "qwert"的每一個元素添加到列表li中,一行代碼實現,不允許循環添加。 7)請刪除列表中的元素"eric",並輸出刪除后的列表 8)請刪除列表中的第2個元素,並輸出刪除的元素和刪除元素后的列表 9)請刪除列表中的第2至4個元素,並輸出刪除元素后的列表 10)請將列表所有得元素反轉,並輸出反轉后的列表 11)請計算出"alex"元素在列表li中出現的次數,並輸出該次數。 ''' # li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] # print(len(li)) #1). # li.append("seven") #2). # print(li) # li.insert(0, "Tony") #3). # print(li) # li[1] = "Kelly" #4). # print(li) # l2 = [1, "a", 3, 4, "heart"] #5). # li.extend(l2) # s = "qwert" #6). # li.extend(s) # s2 = "eric" #7). # for cou in range(li.count(s2)): # li.remove(s2) # print(li) # s_del = li.pop(1) #8). # print(s_del) # print(li) # del li[1:3] #9). # print(li) # li.reverse() #10). # print(li) # print(li.count("alex")) #11). ''' 19、寫代碼,有如下列表,利用切片實現每一個功能 li = [1, 3, 2, "a", 4, "b", 5,"c"] 1)通過對li列表的切片形成新的列表l1,l1 = [1,3,2] 2)通過對li列表的切片形成新的列表l2,l2 = ["a",4,"b"] 3)通過對li列表的切片形成新的列表l3,l3 = ["1,2,4,5] 4)通過對li列表的切片形成新的列表l4,l4 = [3,"a","b"] 5)通過對li列表的切片形成新的列表l5,l5 = ["c"] 6)通過對li列表的切片形成新的列表l6,l6 = ["b","a",3] ''' # li = [1, 3, 2, "a", 4, "b", 5,"c"] # l1 = li[:3] #1). # print(l1) # l2 = li[3:6] #2). # print(l2) # l3 = li[::2] #3). # print(l3) # l4 = li[1:6:2] #4). # print(l4) # l5 = li[-1:] #5). # print(l5) # l6 = li[-3::-2] #6). # print(l6) ''' 10、寫代碼,完成下列需求: 用戶可持續輸入(用while循環),用戶使用的情況: 輸入A,則顯示走大路回家,然后在讓用戶進一步選擇: 是選擇公交車,還是步行? 選擇公交車,顯示10分鍾到家,並退出整個程序。 選擇步行,顯示20分鍾到家,並退出整個程序。 輸入B,則顯示走小路回家,並退出整個程序。 輸入C,則顯示繞道回家,然后在讓用戶進一步選擇: 是選擇游戲廳玩會,還是網吧? 選擇游戲廳,則顯示 ‘一個半小時到家,爸爸在家,拿棍等你。’並讓其重新輸入A,B,C選項。 選擇網吧,則顯示‘兩個小時到家,媽媽已做好了戰斗准備。’並讓其重新輸入A,B,C選項。 ''' # Flag = True # while Flag: # user_choise = input("請輸入字母ABC中的一個(A:大路,B:小路,C:繞道): ").strip().upper() # #判斷用戶輸入的是否為字母,並且是否是ABC其中的一個 # if user_choise.isalpha() and user_choise in "ABC": # pass # else: # print("輸入有誤,請輸入字母'ABC'中的一個!") # continue # # #根據用戶的選擇做出響應的操作,用戶選擇A的情況 # if user_choise == "A": # print("走大路回家") # while True: # sel_way = input("您是選擇'公交車',還是'步行': ").strip() # if sel_way == "公交車": # print("10分鍾到家") # Flag = False # break # elif sel_way == "步行": # print("20分鍾到家") # Flag = False # break # else: # print("輸入有誤,您是選擇'公交車',還是'步行'") # continue # #用戶選擇B的情況 # elif user_choise == "B": # print("走小路回家") # break # #用戶選擇C的情況 # else: # print("繞道回家") # while True: # sel_play = input("請選擇'游戲廳'玩會,還是'網吧': ").strip() # if sel_play == "游戲廳": # print("一個半小時到家,爸爸在家,拿棍等你。") # break # elif sel_play == "網吧": # print("兩個小時到家,媽媽已做好了戰斗准備。") # break # else: # print("輸入有誤,請選擇'游戲廳'玩會,還是'網吧'") # continue ''' 11、寫代碼:計算 1 - 2 + 3 ... + 99 中除了88以外所有數的總和? ''' # Sum = 0 # for num in range(1,100): # if num == 88: # continue # if num%2 == 1: # Sum += num # else: # Sum -= num # print(Sum) ''' 16、制作趣味模板程序需求:等待用戶輸入名字、地點、愛好,根據用戶的名字和愛好進行任意現實 如:敬愛可親的xxx,最喜歡在xxx地方干xxx ''' # username = input("請輸入您的姓名: ").strip() # address = input("請輸入您的地址: ").strip() # hobby = input("請輸入您的愛好: ").strip() # print("敬愛可愛的%s,最喜歡在%s這個地方%s"%(username, address, hobby)) ''' 17、等待用戶輸入內容,檢測用戶輸入內容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符請重 新輸入”,並允許用戶重新輸入並打印。敏感字符:“小粉嫩”、“大鐵錘” ''' # while True: #方法一 # contents = input("請輸入您的內容: ") # if "小粉嫩" in contents or "大鐵錘" in contents: # print("存在敏感字符,請重新輸入您的內容!") # continue # else: # print("您的內容: %s,發表成功!"%contents) # break ''' 方法二 (列表,可用於檢測多個敏感字符的情況) ''' # sensitive_lis = ["小粉嫩", "大鐵錘"] # # contents = input("請輸入您的內容: ") # i = 0 # while i < len(sensitive_lis): # if sensitive_lis[i] in contents: # print("存在敏感字符,請重新輸入您的內容.") # contents = input("請輸入您的內容: ") # i = 0 # continue # i += 1 # print("您的內容: %s,發表成功!"%contents) ''' 20、寫代碼,有如下列表,按照要求實現每一個功能。 lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] 1)將列表lis中的"tt"變成大寫(用兩種方式)。 2)將列表中的數字3變成字符串"100"(用兩種方式)。 3)將列表中的字符串"1"變成數字101(用兩種方式)。 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] #1)方法一 # lis[3][2][1][0] = lis[3][2][1][0].upper() # print(lis) ''' 1)方法二 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # lis[3][2][1].pop(0) # lis[3][2][1].insert(0, "TT") # print(lis) ''' 1)方法三 遞歸調用 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # def edit_value(lis_p, old_v, new_v): # for ind, item in enumerate(lis_p): # if type(item) is list: # edit_value(item, old_v, new_v) # else: # if item == old_v: # lis_p[ind] = new_v # edit_value(lis, "tt", "TT") # print(lis) ''' 2)方法一 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # lis[1] = "100" # lis[3][2][1][1] = "100" # print(lis) ''' 2)方法二 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # lis.pop(1) # lis.insert(1, "100") # lis[3][2][1].pop(1) # lis[3][2][1].insert(1, "100") # print(lis) ''' 3)方法一 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # lis[3][2][1][2] = 101 # print(lis) ''' 3)方法二 ''' # lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # lis[3][2][1].pop(2) # lis[3][2][1].insert(2, 101) # print(lis) ''' 21、請用代碼實現: li = ["alex", "eric", "rain"] 利用下划線將列表的每一個元素拼接成字符串"alex_eric_rain" ''' # li = ["alex", "eric", "rain"] # print("_".join(li)) ''' 22、利用for循環和range打印出下面列表的索引。 li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] ''' # li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] # for i in range(len(li)): # print("元素'%s'的索引是: %d"%(li[i], i)) ''' 23、利用for循環和range找出100以內所有的偶數並將這些偶數插入到一個新列表中。 ''' # lis = [] # for i in range(2, 101): # if i%2 == 0: # lis.append(i) # print(lis) ''' 24、利用for循環和range 找出50以內能被3整除的數,並將這些數插入到一個新列表中。 ''' # lis = [] # for i in range(3, 50): # if i%3 == 0: # lis.append(i) # print(lis) ''' 25、利用for循環和range從100~1,倒序打印。 ''' # for i in range(100, 0, -1): # print(i) ''' 26、利用for循環和range從100~10,倒序將所有的偶數添加到一個新列表中,然后對列表的元素進行篩 選,將能被4整除的數留下來。 ''' # lis = [] # for i in range(100, 9, -1): # if i%2 == 0: # lis.append(i) # if i%4 != 0: # lis.remove(i) # print(lis) ''' 26、利用for循環和range,將1-30的數字一次添加到一個列表中,並循環這個列表,將能被3整除的數改 成*。 ''' # lis = [] # for i in range(1, 31): # if i%3 == 0: # i = '*' # lis.append(i) # print(lis) ''' 27、查找列表li中的元素,移除每個元素的空格,並找出以"A"或者"a"開頭,並以"c"結尾的所有元素,並添 加到一個新列表中,最后循環打印這個新列表。 li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"] ''' # li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"] # lis = [] # for item in li: # item = item.strip() # if item.upper().startswith('A') and item.endswith('c'): # lis.append(item) # for item in lis: # print(item) ''' 28、開發敏感詞語過濾程序,提示用戶輸入評論內容,如果用戶輸入的內容中包含特殊的字符: 敏感詞列表 li = ["蒼老師", "東京熱", "武藤蘭", "波多野結衣"] 則將用戶輸入的內容中的敏感詞匯替換成等長度的*(蒼老師就替換***),並添加到一個列表中;如果用戶輸入 的內容沒有敏感詞匯,則直接添加到上述的列表中。 ''' # li = ["蒼老師", "東京熱", "武藤蘭", "波多野結衣"] # lis = [] # contents = input("請輸入評論內容:").strip() # for item in li: # if item in contents: # contents = contents.replace(item, '*'*len(item)) # lis.append(contents) # print(lis) ''' 29、有如下變量(tu是個元祖),請實現要求的功能 tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) a. 講述元祖的特性 b. 請問tu變量中的第一個元素 "alex" 是否可被修改? c. 請問tu變量中的"k2"對應的值是什么類型?是否可以被修改?如果可以,請在其中添加一個元素 "Seven" d. 請問tu變量中的"k3"對應的值是什么類型?是否可以被修改?如果可以,請在其中添加一個元素 "Seven" ''' # tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) #a.元組是不可改變的列表 #b.不可修改 #c.列表,可修改 # tu[1][2]['k2'].append('Seven') # print(tu) #d.元組,不可修改 ''' 30、字典dic,dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]} a. 請循環輸出所有的key b. 請循環輸出所有的value c. 請循環輸出所有的key和value d. 請在字典中添加一個鍵值對,"k4": "v4",輸出添加后的字典 e. 請在修改字典中 "k1" 對應的值為 "alex",輸出修改后的字典 f. 請在k3對應的值中追加一個元素 44,輸出修改后的字典 g. 請在k3對應的值的第 1 個位置插入個元素 18,輸出修改后的字典 ''' # dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]} # for k in dic.keys(): #a. # print(k) # for v in dic.values(): #b. # print(v) # for k, v in dic.items(): #c. # print(k, ':', v) # dic.setdefault("k4", "v4") #d. # print(dic) # dic["k1"] = "alex" #e. # print(dic) # dic["k3"].append(44) #f. # print(dic) # dic['k3'].insert(0, 18) #g. # print(dic) ''' 31、如下 av_catalog = { "歐美":{ "www.youporn.com": ["很多免費的,世界最大的","質量一般"], "www.pornhub.com": ["很多免費的,也很大","質量比yourporn高點"], "letmedothistoyou.com": ["多是自拍,高質量圖片很多","資源不多,更新慢"], "x‐art.com":["質量很高,真的很高","全部收費,屌絲請繞過"] }, "日韓":{ "tokyo‐hot":["質量怎樣不清楚,個人已經不喜歡日韓范了","verygood"] }, "大陸":{ "1024":["全部免費,真好,好人一生平安","服務器在國外,慢"] } } a,給此 ["很多免費的,世界最大的","質量一般"]列表第二個位置插入一個 元素:'量很大'。 b,將此 ["質量很高,真的很高","全部收費,屌絲請繞過"]列表的 "全部收費,屌絲請繞過" 刪除。 c,將此 ["質量很高,真的很高","全部收費,屌絲請繞過"]列表的 "全部收 費,屌絲請繞過" 刪除。 d,將此["質量怎樣不清楚,個人已經不喜歡日韓范了","verygood"]列表的 "verygood"全部變成大寫。 e,給 '大陸' 對應的字典添加一個鍵值對 '1048' :['一天就封了'] f,刪除此"letmedothistoyou.com": ["多是自拍,高質量圖片很多","資源不多,更新慢"]鍵值對。 g,給此["全部免費,真好,好人一生平安","服務器在國外,慢"]列表的第一個元素,加上一句話:'可以爬下來' ''' # av_catalog = { # "歐美":{ # "www.youporn.com": ["很多免費的,世界最大的","質量一般"], # "www.pornhub.com": ["很多免費的,也很大","質量比yourporn高點"], # "letmedothistoyou.com": ["多是自拍,高質量圖片很多","資源不多,更新慢"], # "x‐art.com":["質量很高,真的很高","全部收費,屌絲請繞過"] # }, # "日韓":{ # "tokyo‐hot":["質量怎樣不清楚,個人已經不喜歡日韓范了","verygood"] # }, # "大陸":{ # "1024":["全部免費,真好,好人一生平安","服務器在國外,慢"] # } # } # av_catalog["歐美"]["www.youporn.com"].insert(1, "量很大") #a. # print(av_catalog) # av_catalog["歐美"]["x‐art.com"].pop() #b). # print(av_catalog) # if av_catalog["歐美"]["x‐art.com"].count("全部收 費,屌絲請繞過") != 0: #c). # av_catalog["歐美"]["x‐art.com"].remove("全部收 費,屌絲請繞過") # print(av_catalog) # av_catalog["日韓"]["tokyo‐hot"][1] = av_catalog["日韓"]["tokyo‐hot"][1].upper() #d). # print(av_catalog) # av_catalog["大陸"].setdefault("1048", ["一天就封了"]) #e). # print(av_catalog) # av_catalog["歐美"].pop("letmedothistoyou.com") #f). # print(av_catalog) # av_catalog["大陸"]["1024"][0] = "可以爬下來," + av_catalog["大陸"]["1024"][0] #g). # print(av_catalog) ''' 32、有字符串"k:1|k1:2|k2:3|k3:4" 處理成字典 {'k':1,'k1':2....} ''' # s = "k:1|k1:2|k2:3|k3:4" # dic = {} # for item in s.split("|"): # k,v = item.split(":") # dic.setdefault(k, int(v)) # print(dic) ''' 33、元素分類 有如下值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 num in li: # if num > 66: # dic['k1'].append(num) # elif num < 66: # dic['k2'].append(num) # else: # continue # print(dic) ''' 方式二 ''' # li = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90] # dic = {} # for num in li: # if num > 66: # dic.setdefault("k1", []).append(num) # elif num < 66: # dic.setdefault("k2", []).append(num) # else: # continue # print(dic) ''' 寫代碼,有如下字典,按照要求實現每一個功能dic = {'k1':'v1', 'k2':'v2', 'k3':'v3'} 1.請循環遍歷出所有的 key ''' # dic = {'k1':'v1', 'k2':'v2', 'k3':'v3'} # for k in dic.keys(): # print(k) ''' 2.請循環遍歷出所有的 value ''' # dic = {'k1':'v1', 'k2':'v2', 'k3':'v3'} # for v in dic.values(): # print(v) ''' 3.請循環遍歷出所有的 key 和 value ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # for k, v in dic.items(): # print(k, v) ''' 4.請在字典中添加一個鍵值對, 'k4': 'v4',輸出添加后的字典 ''' # dic = {'k1':'v1', 'k2':'v2', 'k3':'v3'} # # dic.setdefault('k4', 'v4') # dic['k4'] = 'v4' # print(dic) ''' 5.請刪除字典中鍵值對'k1':'v1',並輸出刪除后的字典 ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # # del dic['k1'] # dic.pop('k1') # print(dic) ''' 6.請刪除字典中的鍵'k5'對應的鍵值對,如果字典中不存在鍵'k5',則不報錯,並且讓其返回None. ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # if dic.get("k5") != None: # del dic['k5'] # else: # print(None) ''' 7.請獲取字典中'k2'對應的值. ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # print(dic['k2']) ''' 8.請獲取字典中'k6'對應的值,如果鍵'k6'不存在,則不報錯,並且讓其返回None. ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # if dic.get("k6") != None: # print(dic['k6']) # else: # print(None) ''' 9.現有 dic2 = {'k1': 'v1', 'a': 'b'}通過一行操作使 dic2 = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'a': 'b'} ''' # dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} # dic2 = {'k1': 'v111', 'a': 'b'} # dic2.update(dic) # print(dic2) ''' 10.組合嵌套題.寫代碼,有如下列表,按照要求實現每一個功能 lis = [['k', ['qwe', 20, {'k1':['tt', 3, '1']}, 89], 'ab']] 1).將列表lis 中的'tt'變成大寫(用兩種方式). 2).將列表中的數字3編程字符串'100'(用兩種方式). 3).將列表中的字符串'1'變成數字101(用兩種方式). ''' # lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']] #1). # def edit_value(lis_i, old_v, new_v): # for ind,item in enumerate(lis_i): # if type(item) is list: # edit_value(item, old_v, new_v) # elif type(item) is dict: # for v in item: # edit_value(item[v], old_v, new_v) # else: # if item == old_v: # lis_i[ind] = new_v # break # edit_value(lis, 3, '100') # print(lis) # lis[0][1][2]['k1'][0] = "TT" # lis[0][1][2]['k1'][0] = lis[0][1][2]['k1'][0].upper() # print(lis) # lis[0][1][2]['k1'][1] = "100" #2). # print(lis) # lis[0][1][2]['k1'].remove(3) # lis[0][1][2]['k1'].insert(1, '100') # print(lis) # lis[0][1][2]['k1'][2] = 101 #3). # print(lis) # lis[0][1][2]['k1'].remove('1') # lis[0][1][2]['k1'].insert(2, 101) # print(lis) ''' 11.按照要求實現如下功能: 現有一個列表 li = [1,2,3, 'a', 'b', 4, 'c'],有一個字典(此字典是動態生成的,你並不知道他里面有多少鍵值對,所以用 dic = {}模擬此字典);現在需要完成這樣的操作:如果該字典沒有'k1'這個鍵,那就創建這個'k1'鍵和其對應的值(該鍵對應的值設置為空列 表),並將列表 li 中的索引位為奇數對應的元素,添加到'k1'這個鍵對應的空列表中.如果該字典中有'k1'這個值,且k1對應的value 是列表類型,那就將列表 li中的索引位為奇數對應的元素,添加到'k1'這個鍵對應的值中. ''' # li = [1, 2, 3, 'a', 'b', 4, 'c'] # dic = {} # dic.setdefault('k1', []) # for ind, item in enumerate(li): # if ind % 2 == 1: # dic['k1'].append(item) # print(dic) ''' 1.請用代碼實現: 利用下划線將列表的每一個元素拼接成字符串, li = ["alex", "eric", "rain"] ''' # li = ["alex", "eric", "rain"] # s = "_".join(li) # print(s) ''' 9.元素分類 有如下值集合[11, 22, 33, 44, 55, 66, 77, 88, 99, 90],將所有大於66的值保存至字典的第一個key中,將小於66的值 保存至第二個key的值中. 即: {'k1':大於66的所有值, 'k2':小於66的所有值} ''' # lst = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90] # dic = {'k1': [], 'k2': []} # for item in lst: # if item > 66: # dic['k1'].append(item) # elif item < 66: # dic['k2'].append(item) # print(dic) ''' 14. 利用for循環和range輸出 .for循環從大到小的輸出1-100 ''' # for i in range(1, 101): # print(i) ''' .for循環從小到大輸出100-1 ''' # for i in range(100, 0, -1): # print(i) ''' .while循環從大到小輸出100-1 ''' # count = 100 # while count >= 1: # print(count) # count -= 1 ''' .while循環從小到大輸出1-100 ''' # count = 1 # while count < 101: # print(count) # count += 1 ''' .在不改變列表數據結構的情況下找最大值li = [1, 3, 2, 7, 6, 23, 41, 243, 33, 85, 56] ''' # li = [1, 3, 2, 7, 6, 23, 41, 243, 33, 85, 56] # Max = li[0] # for i in li: # if Max < i: # Max = i # print(Max) # print(li) ''' .在不改變列表中數據排列結構的前提下,找出以下列表中最接近最大值和最小值的平均值的數 li = [-100, 1, 3, 2, 7, 6, 120, 121, 140, 23, 411, 99, 243, 33, 85, 56] ''' # li = [-100, 1, 3, 2, 7, 6, 120, 121, 140, 23, 411, 99, 243, 33, 85, 56] # #最大值和最小值 # Max = li[0] # Min = li[0] # for i in li: # if Max < i: # Max = i # if Min > i: # Min = i # # #最大數和最小數的平均值 # Average = (Max + Min)/2 # Min_v = li[0] # for i in li: # if abs(Average - i) < abs(Average - Min_v): # Min_v = i # print(Min_v) ''' 下面是一種比較好理解的方式 獲取每個元素和平均值相減,由差值取絕對值組成的列表 ''' # new_list = [] # for i in li: # new_list.append(abs(i - Average)) # # #獲取最小值和最小值的索引 # min_v = new_list[0] # min_ind = 0 # for k, v in enumerate(new_list): # if min_v > v: # min_v = v # min_ind = k # print(li[min_ind]) ''' .利用for循環和range輸出9*9乘法表 ''' # for i in range(1, 10): # s = "" # for j in range(1, i+1): # s += "%d*%d=%d " % (j, i, i*j) # print(s) ''' .求100以內的素數和.(編程題) ''' # Sum = 0 # for i in range(2, 100): # for j in range(2, i): # if i % j == 0: # break # else: # # print(i) # Sum += i # print(Sum)