我需要能够打印字典列表中某个名字的所有示例。我似乎无法以所需的格式打印它们。当名字是小写而名字是大写时,它也不起作用。
def findContactsByName(name):
return [element for element in contacts if element['name'] == name]
def displayContactsByName(name):
print(findContactsByName(name))
if inp == 3:
print("Item 3 was selected: Find contact")
name = input("Enter name of contact to find: ")
displayContactsByName(name)
在输出中输入名称"Joe"时为:
[{'name': 'Joe', 'surname': ' Miceli', 'DOB': ' 25/06/2002', 'mobileNo': ' 79444425', 'locality': ' Zabbar'}, {'name': 'Joe', 'surname': 'Bruh', 'DOB': '12/12/2131', 'mobileNo': '77777777', 'locality': 'gozo'}]
当名字"乔":
[]
预期输出:
name : Joe
surname : Miceli
DOB : 25/06/2002
mobileNo : 79444425
locality : Zabbar
name : Joe
surname : Bruh
DOB : 12/12/2131
mobileNo : 77777777
locality : gozo
3条答案
按热度按时间b1payxdu1#
将第一个函数更改为:
为了说明大小写的差异,我只在比较部分将字典中的名称和输入的名称转换为小写。
为了能够以您指定的格式打印它,您可以为相同的创建一个函数,如下所示:
stszievb2#
我修改了你的程序。现在你不必担心大小写和输出格式了。
xdyibdwo3#
大小写问题可以通过将比较的每一侧设置为大写或小写来解决。
第一个月
对于print语句的格式,可以使用
json
模块: