Читая учебник по питону, мне кажется, что {словарь} - это то, что мне нужно, хотя я читал здесь, что кортежи могут быть лучше.Я не знаю.
Оба варианта отлично подходят для этой задачи.
print row.keys()
Вывод выглядит так:
{'LATITUDE': '-1.311467078',
Нет, это не так!Это вывод из print row
, наиболее определенно НЕ print row.keys()
.Пожалуйста, не вводите дезинформацию в своих вопросах, это затрудняет эффективный ответ (будучи новичком, нет никакой разницы: конечно, вы можете проверить, что вывод, который вы предоставляете, на самом деле происходит из кода, который вы также предоставляете!).
Я новичок (а не программист).Вопрос в том, как использовать ключи, чтобы извлечь соответствующие данные строки и сопоставить их со словами в теле элемента в другом наборе?
Поскольку вы предоставляете нам абсолютно нулевую информацию о структуре«другого набора», вы, конечно же, не можете ответить на этот вопрос.Неожиданно догадываясь, что если, например, записи в «другом наборе» также имеют dict
с ключом KEYWORD
, сначала нужно создать вспомогательный дикт, а затем объединить (некоторые из) его записей в «другом».set ":
l = csv.DictReader(floc)
dloc = dict((d['KEYWORD'], d) for d in l)
for d in otherset:
d.update(dloc.get(d['KEYWORD'], ()))
Это позволит оставить местоположение отсутствующим в другом наборе, если его нет в соответствующей записи ключевого слова в CSV - если это проблема, вы можете использовать словарь" поддельное местоположение "в качестве значения по умолчанию для пропущенных записей вместо этого ()
в последнем утверждении, которое я показал.Но все равно это все дикие предположения из-за недостатка информации в вашем вопросе.