Python字典格式查询

Python字典格式查询,python,dictionary,Python,Dictionary,下面是创建字典的一个小的基本函数: def Professor(name,salary,course): ProfDict = {"Name":name,"Salary":salary,"Course":course} return (ProfDict) 我希望以良好的格式返回字典,例如: 姓名:弗雷德·史密斯;部门:历史;工资:30000英镑 我找不到太多关于字典格式的信息, 谢谢 首先,不要用括号返回字典。要打印,请执行以下操作: ProfDict = Professor(

下面是创建字典的一个小的基本函数:

def Professor(name,salary,course):
    ProfDict = {"Name":name,"Salary":salary,"Course":course}
    return (ProfDict)
我希望以良好的格式返回字典,例如:

姓名:弗雷德·史密斯;部门:历史;工资:30000英镑

我找不到太多关于字典格式的信息,
谢谢

首先,不要用括号返回字典。要打印,请执行以下操作:

ProfDict = Professor("Dr. Bob", 100000, "Intro to Medical Coding")
for key, value in ProfDict.items():
    print key, ':', 'value, ";",

当然,您可以使用任何附加的字符串格式使其看起来像您想要的那样。

字典不是格式化的,因为它只是一个数据结构。您需要的是使用字典中存储的数据构造一个字符串

def Professor(name,salary,course):
    ProfDict = {"Name":name,"Salary":salary,"Course":course}
    return "Name: {0[Name]}; Salary: {0[Salary]}; Course: {0[Course]}".format(ProfDict)

将字典作为**kwargs传递给字符串的
格式
函数:

def Professor(name, salary, course):
    prof_dict = {"Name": name,"Salary": salary,"Course": course}
    return prof_dict

some_prof = Professor(...)
nice_string = "Name: {Name}; Department: {Course}; Salary: {Salary}".format(
    **some_prof)
这是你想要的吗

def Professor(name,salary,course):
ProfDict = {"Name":name,"Salary":salary,"Course":course}
return (ProfDict)

temp = Professor("Fred Smith",30000,"History")
print "Name:",temp["Name"] + "; Department:",temp["Course"] + "; Salary: " + str(temp["Salary"])

谢谢,这是一个很好的方法,我会记住这一点。我实际上在Python2.7中尝试过,占位符中没有0,但出现了错误:
索引器:元组索引超出范围
在占位符中使用0,它在2.7上工作。我删除了最后一部分。我的大部分工作仍在Python2.6中,因此我忘记了省略字段名是如何工作的。如果您多次使用该属性,则始终需要
0
。省略索引假定您是按顺序进行的(
0
1
,…)是的,这是我忘记的部分。在我的快速测试中,我只使用一个键(
'Name:{[Name]}.format({“Name:“Me”})
)来测试索引语法。