簡體   English   中英

在Python中向現有字典添加新鍵值

[英]Adding new key value to existing dictionary in Python

我用Python創建了一個字典。

Employee = dict(EmpName="Peter", Empid="456", Designation="Country Head") 

現在,如果我想將相同的內容添加到同一本詞典中。

Employee.update(EmpName="Suresh", Empid="585", Designation="Director")

請提出建議。 我試圖在同一詞典中添加另一個元素。 但它沒有被添加。

您可以簡單地做到這一點:

Employee = dict(EmpName="Peter", Empid="456", Designation="Country Head")
...
Employee = dict(EmpName="Suresh", Empid="585", Designation="Director")

並且,如果要使用update()方法,則創建一個包含update()方法的Employee類。

無論如何,由於這些字段似乎是固定的,因此我建議您使用其中包含EmpNameEmpidDesignation字段的Employee對象。

使用對象(代替幾個字典對象)的主要好處之一是,您將能夠鍵入(然后信任每個元素的內容)一組Employee對象。 在哪里操作詞典集合可能只會導致您缺少字段或每個字段使用不同的標簽。

在我看來,你想用3屬性列, 姓名身份證 ,並指定員工的表。 因此,您的數據具有2個維度,即員工vs屬性。 您無法使用一個字典來做到這一點。

一種我認為想要的方法是這種方法。 首先定義具有屬性的行結構。

>>> from collections import namedtuple
>>> Employee = namedtuple('Employee','EmpName,Empid,Designation')

現在建立員工維度。

>>> employees = []
>>> employees.append(Employee(EmpName="Peter", Empid="456", Designation="Country Head"))
>>> employees.append(Employee(EmpName="Suresh", Empid="585", Designation="Director"))
>>> employees
[Employee(EmpName='Peter', Empid='456', Designation='Country Head'), Employee(EmpName='Suresh', Empid='585', Designation='Director')]

盡管這是我想要的,但我必須指出,它不是用於進一步處理的非常有用的數據結構。 例如,更新很困難。 假設Suresh升任董事總經理。 更新此數據結構以反映該數據結構的唯一方法是搜索所有員工,以找到要更新的員工。 或假設一名雇員辭職:同上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM