Python + PostgreSQL: [Id] + row IndexError: индекс списка вне диапазона - PullRequest
0 голосов
/ 21 марта 2019

Я новичок в работе с Python 3.7 (анаконда) + PostgreSQL. Задача состоит в том, чтобы поместить данные в базу данных PostgreSQL, но я продолжаю получать эту вещь:

Traceback (most recent call last):
  File "/Users/gshn/PycharmProjects/StatsWithPandasRSQL/Pandas/load_data_to_postgres.py", line 37, in <module>
    [Id] + row
IndexError: list index out of range

Как я могу это исправить? Сам код:

import psycopg2
import csv

conn = psycopg2.connect("host=localhost port=5433 dbname=gshn     user=postgres password=secret")
cursor = conn.cursor()

query = """
CREATE TABLE IF NOT EXISTS adult_data (
    id SERIAL PRIMARY KEY,
    age INTEGER,
    workclass VARCHAR,
    fnlwgt INTEGER,
    education VARCHAR,
    education_num INTEGER,
    marital_status VARCHAR,
    occupation VARCHAR,
    relationship VARCHAR,
    race VARCHAR,
    sex VARCHAR,
    capital_gain INTEGER,
    capital_loss INTEGER,
    hours_per_week INTEGER,
    native_country VARCHAR,
    salary VARCHAR
    )
"""
cursor.execute(query)
conn.commit()

with open('/Users/gshn/PycharmProjects/StatsWithPandasRSQL/Pandas/adult_data.csv', 'r') as f:
    reader = csv.reader(f)
    # Skip the header row
    next(reader)
    for Id, row in enumerate(reader):
        cursor.execute(
            "INSERT INTO adult_data VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
            [Id] + row
        )
conn.commit()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...