Advertisement
Guest User

Untitled

a guest
Jul 6th, 2020
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.21 KB | None | 0 0
  1. IMPORT
  2.  
  3. from sys import argv
  4. from csv import reader
  5. from cs50 import SQL
  6.  
  7. if len(argv) != 2:
  8.     print("Usage: python import.py characters.csv")
  9.     exit()
  10.  
  11. db = SQL("sqlite:///students.db")
  12.  
  13. with open(argv[1], newline='') as characters:
  14.     reader = reader(characters)
  15.  
  16.     for character in reader:
  17.         if character[0] == 'name':
  18.             continue
  19.  
  20.         first = character[0].split()[0]
  21.         last = character[0].split()[-1]
  22.  
  23.         if character[0].count(' ') == 2:
  24.             middle = character[0].split()[1]
  25.         else:
  26.             middle = "NULL"
  27.  
  28.         db.execute("INSERT INTO students (first, middle, last, house, birth) VALUES(?, ?, ?, ?, ?)", first, middle, last, character[1], character[2])
  29.  
  30. ROSTER
  31.  
  32. from sys import argv
  33. from cs50 import SQL
  34.  
  35. if len(argv) != 2:
  36.     print("Usage: python roster.py House")
  37.     exit()
  38.  
  39. db = SQL("sqlite:///students.db")
  40.  
  41. characteres = db.execute("SELECT * FROM students WHERE house = (?) ORDER BY last", argv[1])
  42.  
  43. for c in characteres:
  44.     if c['middle'] != "NULL":
  45.         print("{} {} {}, born {}" .format(c['first'], c['middle'], c['last'], c['birth']))
  46.     else:
  47.         print("{} {}, born {}" .format(c['first'], c['last'], c['birth']))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement