真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

35字典中format_map方法格式化字符串序列與迭代-創(chuàng)新互聯(lián)

第四課 用format_map方法格式化字符串 用于字典中

# 用format_map方法格式化字符串 首先 format_map方法 不是字典中的,是字符串的 

values1 = (1,2,'hello')       # 這是定義一個(gè)元組
str1 = "abc %d   xyz, %d, %s world"     # %d 數(shù)字  %s 字符串 
print(str1 % values1)               # abc 1   xyz, 2, hello world

values2 = {'title':'極客起源', 'url':'https://geekori.com','company':'歐瑞科技'} # 定義一個(gè)字典

str2 = """

    
        {title}
        
    
    
        

{title}

{company} """ print(str2.format_map(values2)) # 輸出的結(jié)果為 ''' 極客起源

極客起源

歐瑞科技 ''' ---------------------------------------------- 第五課 序列(列表 元組 字典)與迭代 # 序列與迭代 序列包含(列表 元組 字典) 迭代 可以比如重復(fù)的for循環(huán) ''' 1. 獲取字典中key的列表 2. 獲取字典中key—value對(duì)的列表 3. 并行迭代 4. 壓縮序列 5. 反轉(zhuǎn)序列迭代 迭代是重復(fù)反饋過(guò)程的活動(dòng),其目的通常是為了逼近所需目標(biāo)或結(jié)果。每一次對(duì)過(guò)程的重復(fù)稱為一次“迭代”,而每一次迭代得到的結(jié)果會(huì)作為下一次迭代的初始值。 重復(fù)執(zhí)行一系列運(yùn)算步驟,從前面的量依次求出后面的量的過(guò)程。此過(guò)程的每一次結(jié)果,都是由對(duì)前一次所得結(jié)果施行相同的運(yùn)算步驟得到的。例如利用迭代法*求某一數(shù)學(xué)問(wèn)題的解。 對(duì)計(jì)算機(jī)特定程序中需要反復(fù)執(zhí)行的子程序*(一組指令),進(jìn)行一次重復(fù),即重復(fù)執(zhí)行程序中的循環(huán),直到滿足某條件為止,亦稱為迭代。 ''' # 定義一個(gè)字典 d = {"name":"Bill", "age":20,"sex":"男", "salary":4567.5} # 迭代字典中的key for key in d: print("{} = {}".format(key, d[key]), end = ' ') # name = Bill age = 20 sex = 男 salary = 4567.5 print() # 同時(shí)迭代字典中的key和value for key,value in d.items(): # d.items() 字典中的一個(gè) items方法 獲取字典中的kv對(duì) print("{} = {}".format(key, value), end = ' ') # name = Bill age = 20 sex = 男 salary = 4567.5 # 上面的2個(gè)結(jié)果是完全一樣的,方法和思想是不一樣的 print() # 換行 # 并行迭代 list1 = [1,2,3,4,5] list2 = ['a','b','c','d','e'] for i in range(len(list1)): # 產(chǎn)生一個(gè)范圍 print("list1[{}] = {}, list2[{}] = {}".format(i,list1[i],i,list2[i]),end = " ") # 輸出的結(jié)果Wie # list1[0] = 1, list2[0] = a list1[1] = 2, list2[1] = b list1[2] = 3, list2[2] = c list1[3] = 4, list2[3] = d list1[4] = 5, list2[4] = e print() # 壓縮迭代 引入zip函數(shù) for value in zip(list1, list2): print(value, end = " ") # (1, 'a') (2, 'b') (3, 'c') (4, 'd') (5, 'e') print() items = [] # 定義一個(gè)列表之后, 追加 然后進(jìn)行 dict轉(zhuǎn)化為 字典 for value in zip(list2, list1): items.append(value) d1 = dict(items) print(d1) # {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} print() # print(zip(list1, list2)) # 反轉(zhuǎn)排序迭代 這里values1的元素 只支持?jǐn)?shù)字,不支持字符串的 values1 = [4,1,5,6,3,1,7,9] print(sorted(values1)) # [1, 1, 3, 4, 5, 6, 7, 9] sorted 排序 values2 = reversed(values1) # reversed 反轉(zhuǎn) for v in values2: print(v, end = " ") # 9 7 1 3 6 5 1 4 print() # abcdefg gfedcba print(''.join(list(reversed("abcdefg")))) # 結(jié)果為: gfedcba 思想為:reversed先倒序 然后list轉(zhuǎn)化為一個(gè)列表 然后在通過(guò) join鏈接起來(lái) 中間沒(méi)有任何的東西,需要用空串去鏈接就可以了 最后的結(jié)果為就是把 列表中的元素首尾 相接 中間沒(méi)有任何的分隔符 2個(gè)函數(shù)1個(gè)方法 分布式為: print(list(reversed("abcdefg"))) # ['g', 'f', 'e', 'd', 'c', 'b', 'a'] ------------------------------------------------ 第六課 清空字典(clear方法) # clear方法: 徹底清空字典 names1 = {"Bill":20, "Mike":30,"John":50} names2 = names1 names1["Bill"] = 45 print(names2) # {'Bill': 45, 'Mike': 30, 'John': 50} #names1 = {} names1.clear() # 清空 print(names2) # {} ----------------------------------------------- 第七課 復(fù)制字典(copy方法和deepcopy函數(shù)) # copy方法與deepcopy函數(shù) 2個(gè)都是復(fù)制字典的 但是他們有什么區(qū)別呢? # copy方法是潛復(fù)制 只復(fù)制第一層 剩下的就共同指向一個(gè)值了 如果字典中的值是另外的一個(gè)字典或者一個(gè)列表 復(fù)制完的字典的值就是指向同一個(gè)對(duì)象 通俗的講究是 變一個(gè)都變 相互關(guān)聯(lián)的 # deepcopy函數(shù) 深復(fù)制 不管你有多少層都進(jìn)行復(fù)制 變其中一個(gè),另外的一個(gè)不變 person1 = {"name":"Bill", "age":30, "fullName":["Bill","Gates"]} person2 = person1.copy() print('person2' , person2) # person2 {'name': 'Bill', 'age': 30, 'fullName': ['Bill', 'Gates']} 結(jié)果和person1 是完全一樣的 person1["age"] = 60 # 改變了 person1的值,person1 變了 person2 是person1 copy過(guò)來(lái)的 那么person2 的值 沒(méi)有變 print('person1' , person1) # person1 {'name': 'Bill', 'age': 60, 'fullName': ['Bill', 'Gates']} print('person2' , person2) # person2 {'name': 'Bill', 'age': 30, 'fullName': ['Bill', 'Gates']} person1["fullName"][1] = "Clinton" # 改變了 fullName (為第二層) 索引為1的值 person1 person2 的值都變了 這一步為潛復(fù)制 變一個(gè)都變 print('person1' , person1) # person1 {'name': 'Bill', 'age': 60, 'fullName': ['Bill', 'Clinton']} print('person2' , person2) # person2 {'name': 'Bill', 'age': 30, 'fullName': ['Bill', 'Clinton']} from copy import deepcopy person1 = {"name":"Bill", "age":30, "fullName":["Bill","Gates"]} person2 = deepcopy(person1) # 在這里 person1 和person2 為2個(gè)完全不同的2個(gè)字典 改變了person1 的值 person2的值是不會(huì)變的 person1["fullName"][1] = "Clinton" # 用 deepcopy函數(shù) 改變了 fullName 索引為1的值 person1 變了 person2 沒(méi)有變 print("person1", person1) # person1 {'name': 'Bill', 'age': 30, 'fullName': ['Bill', 'Clinton']} print("person2", person2) # person2 {'name': 'Bill', 'age': 30, 'fullName': ['Bill', 'Gates']} --------------------------------------------- 第八課 根據(jù)key創(chuàng)建字典(fromkeys方法) # fromkeys方法 : 作用 可以根據(jù)這個(gè)方法 key 創(chuàng)建一個(gè)字典 并且所有的key都是擁有同一個(gè)值,同一個(gè)默認(rèn)值 這個(gè)方法的返回值就是新的字典 # None newDict1 = {}.fromkeys(['name', 'company', 'salary']) # 空的字典,返回值的value為空 用列表表示key print(newDict1) # {'name': None, 'company': None, 'salary': None} newDict2 = newDict1.fromkeys(('name', 'company','age')) # 空的字典,返回值的value為空 用元組表示key print(newDict2) # {'name': None, 'company': None, 'age': None} newDict3 = newDict1.fromkeys(['name', 'company', 'salary'],'沒(méi)有值') # 不指定就是None print(newDict3) # {'name': '沒(méi)有值', 'company': '沒(méi)有值', 'salary': '沒(méi)有值'} newDict3 = {}.fromkeys(['name', 'company', 'salary'],'majihui') # {'name': 'majihui', 'company': 'majihui', 'salary': 'majihui'} print(newDict3) ----------------------------------------------- 第九課 用更寬松的方式獲取字典中的 value(get方法) # get方法 dict = {"name":"Bill", "age":30} print(dict["age"]) # 30 #dict['salary'] = 3000 #print(dict['salary']) # 報(bào)錯(cuò) 不存在 print(dict.get('salary')) # None 用get的話 不存在的值 會(huì)返回 None print(dict.get('salary', 3000)) # 3000 # 此場(chǎng)景經(jīng)常用于解讀 key values的值 get方法去獲取不在字典中的key 友好的輸出不至于報(bào)錯(cuò) d = {'help':'幫助', 'bike':'自行車','geek':'極客', 'China':'中國(guó)'} while True: word = input('請(qǐng)輸入英文單詞:') if word == ':exit': break; value = d.get(word) if value == None: print('{}在字典中不存在.'.format(word)) else: print('"{}"的含義是"{}"'.format(word,value)) 請(qǐng)輸入英文單詞:china china在字典中不存在. 請(qǐng)輸入英文單詞:China "China"的含義是"中國(guó)" 請(qǐng)輸入英文單詞:exit

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)服務(wù)團(tuán)隊(duì)是一支充滿著熱情的團(tuán)隊(duì),執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時(shí)竭誠(chéng)為客戶提供服務(wù)是我們的理念。創(chuàng)新互聯(lián)公司把每個(gè)網(wǎng)站當(dāng)做一個(gè)產(chǎn)品來(lái)開(kāi)發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!

當(dāng)前標(biāo)題:35字典中format_map方法格式化字符串序列與迭代-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://weahome.cn/article/djcioh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部