Здравствуйте! Питон.Не могу открыть csv. словарь
Есть цикл, который рандомно генерирует имена и номера телефонов и записывает их в csv.файл. Теперь когда я хочу прочитать его и найти имя, или номер телефона выходит keyerror.
Username = {"Vasya":123456, "Sasha": 342154}
print(Username["Vasya"])
123456, а должно быть так.
При том, что если я пишу словарь вручную, т.е сам добавляю имена все работает
from ast import NameConstant
import random
import names
f=open(r"C:\расположение файла\name.csv","r+")
name_phone = {}
for i in range(5):
user_n = names.get_full_name()
phone_num = str(random.randint(1000000,9999999))
user_p = '054-'+phone_num
name_phone.update({user_n: user_p})
record = ','.join([user_n,user_p])
f.write(record + '\n')
f.close()
пробую читать так
print(name_phone['сгенерированое имя'])
keyerror
или так:
namel = []
lines = f.readlines()
for i in lines():
a = i.strip('\n')
pair = a.split(',')
namel.append(pair[0], pair[1])
print(namel)
ничего не выходит
Ответы (1 шт):
Автор решения: George Kontsevik
→ Ссылка
Не уверен, что это именно то, что имелось ввиду, но можно использовать пандас для работы с csv файлами. Чтобы прочитать файл используй pd.read_csv(тут путь к файлу). Например:
import pandas as pd
my_dict = {'Name': ['Ivan', 'Kolya'], 'Cell': [123, 456]}
df = pd.DataFrame(my_dict)
print(df[df['Name']=='Ivan']['Cell'].values[0])
Вывод: 123