Python 在有序字典中搜索
我已经做了一个程序,从一个csv文件读取,与此代码Python 在有序字典中搜索,python,csv,oop,dictionary,Python,Csv,Oop,Dictionary,我已经做了一个程序,从一个csv文件读取,与此代码 reader = csv.DictReader(open('FakeNameSet.csv', 'r', encoding='utf-8-sig')) customer_list = [] for line in reader: customer_list.append(line) 此代码从我的csv文件创建这些类型的有序字典 OrderedDict([('Number', '19'), ('Gender'
reader = csv.DictReader(open('FakeNameSet.csv', 'r', encoding='utf-8-sig'))
customer_list = []
for line in reader:
customer_list.append(line)
此代码从我的csv文件创建这些类型的有序字典
OrderedDict([('Number', '19'),
('Gender', 'female'),
('NameSet', 'Dutch'),
('GivenName', 'Özgül'),
('Surname', 'Overgaauw'),
('StreetAddress', 'Adriana Noorlandersingel 200'),
('ZipCode', '3065 HE'),
('City', 'Rotterdam'),
('EmailAddress', 'OzgulOvergaauw@superrito.com'),
('Username', 'Shrothem1971'),
('TelephoneNumber', '06-15253488')]),
OrderedDict([('Number', '20'),
('Gender', 'female'),
('NameSet', 'Dutch'),
('GivenName', 'Gülseren'),
('Surname', 'Willigenburg'),
('StreetAddress', 'Dingspelstraat 28'),
('ZipCode', '9461 JE'),
('City', 'Gieten'),
('EmailAddress', 'GulserenWilligenburg@teleworm.us'),
('Username', 'Ressoare'),
('TelephoneNumber', '06-92433659')])]
现在我需要按姓名访问此列表中的人员,但我不知道如何以这种OrderedDict样式访问此名称。我已经试了两个小时了,似乎什么都没用
基本上,我有一个列表,上面有很多有序的字典,我想在这些字典中搜索一个特定的人;基本上,函数的工作原理如下:
搜索personGülseren,然后返回此人的所有信息。因此,记录是按顺序排列的词典,但您将客户保留在列表中。如果只按名称搜索,将customer_列表更改为字典应该可以解决问题:
customers = {}
for line in reader:
customers['GivenName'] = line
# assuming GivenName is unique, search customers by given name:
customer = customers["Gülseren"]
如果需要按其他字段进行搜索,我建议使用熊猫数据帧:
import pandas as pd
customers = pd.read_csv('FakeNameSet.csv', encoding='utf-8-sig')
# find customers by a given name:
# (doesn't assume uniqueness, you can get several rows)
customers[customers['GivenName] == "Gülseren"]
那时候你试过什么?一个简单的谷歌搜索OrderedICT访问就会得到你所需要的;但是他们的结构和我这里的不一样,他们只做了一个订单,然后搜索,但我有20个,我不知道我做错了什么