Как получить доступ к конкретным ключам и значениям из файлов CSV?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как получить доступ к конкретным ключам и значениям из файлов CSV?

Сообщение Anonymous »

У меня есть файл CSV, отслеживающий счет людей в игре. Я прочитал его с помощью csv.dictreader () < /code>.
Как мне создать словарь с именами, которые являются именами, а значение - оценки?name,Game_1, Game_2, Game_3
James,3,7,4
Charles,2,3,8
Bob,6,2,4
< /code>
Примечание: имена игр могут измениться, а также количество игр. < /p>
Пример кода: < /p>
# Dictionary to load scores into
score_sheet = {}

# Read CSV file into memory
with open("scores.txt") as scores_file:
reader = csv.DictReader(scores_file)

list_of_games = reader.fieldnames[1:]

# Load each row seperately
for row in reader:
for game in list_of_games:
score_sheet[row[0]] = {row[game]:row[game[1]}

< /code>
# Experiment 1
# Load each row separately
for row in reader:
score_sheet[row[0]] = row[1]
< /code>
# Experiment 2
for row, value in reader:
print(row, value)
< /code>
желаемый вывод: < /p>
score_sheet = {
'James':{'Game_1':'3'}, {'Game_2':'7'}, {'Game_3':'4'}
'Charles':{'Game_1':'2'}, {'Game_2':'3'}, {'Game_3':'8'}
'Bob':{'Game_1':'6'}, {'Game_2':'2'}, {'Game_3':'4'}
# Optionally:
# name:[{game:score}, {game:score}, {game:score}]
}
< /code>
Ошибки: < /p>
score_sheet[row[0]] = {row[game]:row[game[1]}
# ^^^^^^ KeyError: 0

score_sheet[row[0]] = row[1]
# ^^^^^^ KeyError: 1
< /code>
for row, value in reader:
print(row, value)
#
# for row, value in reader:
# ^^^^^^^^^^
# ValueError: too many values to unpack (expected 2)
< /code>
Как получить доступ к конкретным ключам или значениям для словари из файла CSV?>

Подробнее здесь: https://stackoverflow.com/questions/797 ... -csv-files
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»