Spaces:
Runtime error
Runtime error
| #!/usr/bin/env python | |
| import csv | |
| import sqlite3 | |
| import sys | |
| SCHEMA = """ | |
| CREATE TABLE penguins ( | |
| species text, | |
| island text, | |
| bill_length_mm real, | |
| bill_depth_mm real, | |
| flipper_length_mm real, | |
| body_mass_g real, | |
| sex text | |
| ); | |
| """ | |
| def main(): | |
| infile = sys.argv[1] | |
| outfile = sys.argv[2] | |
| con = sqlite3.connect(outfile) | |
| con.execute(SCHEMA) | |
| with open(infile, newline="") as f: | |
| reader = csv.DictReader(f) | |
| rows = [ | |
| ( | |
| row["species"], | |
| row["island"], | |
| float(row["bill_length_mm"]) if row["bill_length_mm"] else None, | |
| float(row["bill_depth_mm"]) if row["bill_depth_mm"] else None, | |
| float(row["flipper_length_mm"]) if row["flipper_length_mm"] else None, | |
| float(row["body_mass_g"]) if row["body_mass_g"] else None, | |
| row["sex"] if row["sex"] else None, | |
| ) | |
| for row in reader | |
| ] | |
| con.executemany( | |
| "INSERT INTO penguins VALUES (?, ?, ?, ?, ?, ?, ?)", rows | |
| ) | |
| con.commit() | |
| con.close() | |
| if __name__ == "__main__": | |
| main() | |