内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

Python數(shù)據(jù)結(jié)構(gòu)dict常用操作代碼的示例分析-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關Python數(shù)據(jù)結(jié)構(gòu)dict常用操作代碼的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在師宗等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站建設 網(wǎng)站設計制作定制制作,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,品牌網(wǎng)站建設,成都營銷網(wǎng)站建設,成都外貿(mào)網(wǎng)站建設公司,師宗網(wǎng)站建設費用合理。

dict是python中的常用數(shù)據(jù)結(jié)構(gòu),應該盡量掌握其使用方法

字典是另一種可變?nèi)萜髂P?,且可存儲任意類型對象?/p>

字典的每個鍵值 key=>value 對用冒號 : 分割,每個鍵值對之間用逗號 , 分割,整個字典包括在花括號 {} 中

代碼如下

"""
  初始化一個dict的四種方式:
  1. dict() -> 創(chuàng)建一個空的dict
  2. dict(mapping) -> new dictionary initialized from a mapping object's
    (key, value) pairs
  3. dict(iterable) -> new dictionary initialized as if via:
    d = {}
    for k, v in iterable:
      d[k] = v
  4. dict(**kwargs) -> new dictionary initialized with the name=value pairs
    in the keyword argument list. For example: dict(one=1, two=2)
  """

# 第一種方式
d = dict()

# 第二種方式
# d = {"person": {"name": "admin", "age": 12},
#   "animal": {"name": "gaodan", "age": 3},
#   }

# 第三種方式
d = dict({"name": "admin"})
print(d)

# 第四種方式
d = dict(name='admin', age=12)

print(type(d))
print("原字典:%s" % d) # {'name': 'admin', 'age': 12}

# clear, 清空
# d.clear()
# print(d)


# copy 淺拷貝


new_d = d.copy()
print("copy出的新字典:%s" % new_d) # {'name': 'admin', 'age': 12}

new_d['name'] = 'root'
print('修改之后的copy字典:%s' % new_d) # 修改之后的copy字典:{'name': 'root', 'age': 12}
print("修改之后的原字典:%s" % d) # {'name': 'admin', 'age': 12}
# 總結(jié): copy淺拷貝簡單數(shù)據(jù)結(jié)構(gòu)時,創(chuàng)建了一個新的對象,修改新dict中的值,不會引起原有dict中值的變化

print('*' * 50)

d = {"person": {"name": "admin", "age": 12},
   "animal": {"name": "gaodan", "age": 3}
   }

print(d) # {'person': {'name': 'admin', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}
new_d = d.copy()
new_d['person']['name'] = 'root'

print(new_d) # {'person': {'name': 'root', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}
print(d) # {'person': {'name': 'root', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}

# 總結(jié): 淺拷貝: copy淺拷貝復雜數(shù)據(jù)結(jié)構(gòu)時,只是指向了這個復雜數(shù)據(jù)結(jié)構(gòu)的引用,并沒有創(chuàng)建一個新的對象.所以修改new_d這個新dict的值時,原dict中的值也發(fā)生變化.如果是簡單數(shù)據(jù)結(jié)構(gòu),不存在這類情況,上面也有示例

"""
   python中的深拷貝 需要 import copy
   copy.deepcopy()
"""

print('--------------------deep copy------------------')
import copy

d = {"person": {"name": "admin", "age": 12},
   "animal": {"name": "gaodan", "age": 3}
   }
print(d)
dd = copy.deepcopy(d)
print(dd) # {'person': {'name': 'admin', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}
dd['person']['name'] = '啞巴'
print(dd) # {'person': {'name': '啞巴', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}
print(d) # {'person': {'name': 'admin', 'age': 12}, 'animal': {'name': 'gaodan', 'age': 3}}


# fromkeys, 創(chuàng)建一個新的dict ,key是序列中的值
d = dict.fromkeys(['jet','lily'],{"name":"mam"})
print(d) # {'jet': {'name': 'mam'}, 'lily': {'name': 'mam'}}

# get .取值 ,沒有就是None
value = d.get("jet")
print(value) #{'name': 'mam'}

d = {"name":'admin','age':12}

#items 方法
kv = d.items()
for k,v in kv:
   print(k,v)

keys = d.keys()
print(keys) # dict_keys(['name', 'age'])


# pop(key) 移除指定的key 對應的kv
# value = d.pop('name') # 刪除name 鍵值對
# print(value)  # admin
# print(d) # {'age': 12}


# popitem 移除后面的一組item
popitem = d.popitem()
print(popitem) # ('age', 12) 移除了這一對映射關系
print(d) # {'name': 'admin'}  d 還剩下這玩藝



d = {"name":'admin','age':12}

# setdefault(k,v) , 如果原dict有中k, 就返回原dict中k-->v , 否則就將k,v添加到dict中
default_value = d.setdefault('female', 'ali')
print(default_value)
print(d) # {'name': 'admin', 'age': 12, 'female': 'ali'}

default_value = d.setdefault('female', 'jd')
print(default_value) # ali
print(d) # {'name': 'admin', 'age': 12, 'female': 'ali'}

# update. 往dict中添加元素
# 使用update的第一種方式 ,注意key沒有加引號
# d.update(book='python',teacher='dog')
print(d) # {'name': 'admin', 'age': 12, 'female': 'ali', 'book': 'python', 'teacher': 'dog'}

#使用update的第二種方式
d.update([('teacher','dog'),{'book','java'}]) #好吊的樣子
print(d) #{'name': 'admin', 'age': 12, 'female': 'ali', 'teacher': 'dog', 'book': 'java'}


# values

vs = d.values()
print(vs) #dict_values(['admin', 12, 'ali', 'dog', 'java'])

感謝各位的閱讀!關于“Python數(shù)據(jù)結(jié)構(gòu)dict常用操作代碼的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

本文題目:Python數(shù)據(jù)結(jié)構(gòu)dict常用操作代碼的示例分析-創(chuàng)新互聯(lián)
本文地址:http://www.rwnh.cn/article28/josjp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關鍵詞優(yōu)化、做網(wǎng)站自適應網(wǎng)站、網(wǎng)站建設、軟件開發(fā)、品牌網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
界首市| 息烽县| 惠水县| 石河子市| 高要市| 德钦县| 天镇县| 建阳市| 晋州市| 迁安市| 且末县| 临桂县| 岐山县| 浮梁县| 长子县| 和顺县| 错那县| 修武县| 潜山县| 沈丘县| 青州市| 岢岚县| 锡林浩特市| 大名县| 克什克腾旗| 娄烦县| 麻城市| 若尔盖县| 南投市| 原阳县| 安福县| 绥宁县| 嘉兴市| 渭源县| 吐鲁番市| 曲靖市| 凉城县| 利辛县| 长宁县| 隆昌县| 克什克腾旗|