GitXplorerGitXplorer
c

python-cs50

public
641 stars
254 forks
0 issues

Commits

List of commits on branch main.
Unverified
d67a26b3891a8d093aaa3a53e0f9a7bfeb0a599e

updated actions/github-script to version v7

rrongxin-liu committed 5 months ago
Unverified
688af684d61a01e3bec5008acf2293a6d505196f

updated workflow actions

rrongxin-liu committed 7 months ago
Unverified
dc6a43f5f93cd22457873ee858a60cbac46237f6

updated SQLAlchemy versioning

ddmalan committed 9 months ago
Unverified
e47cc3563cb015159ab897dd8053af2f887f7907

updated for MySQL tests

ddmalan committed 9 months ago
Unverified
3b9036933da29b0265f7ddae0d709ed2784cfb1d

fixed merge

ddmalan committed 9 months ago
Unverified
128f498e8e34f2db10c06633b2f7d2b742ecc2c9

fixed YAML

ddmalan committed 9 months ago

README

The README file for this repository.

CS50 Library for Python

Installation

pip3 install cs50

Usage

import cs50

...

f = cs50.get_float();
i = cs50.get_int();
s = cs50.get_string();

Testing

  1. In one terminal, execute:

    cd python-cs50
    docker compose build
    docker compose up
    
  2. In another terminal, execute:

    docker exec -it python-cs50 bash -l
    

    And then execute, e.g.:

    python tests/sql.py
    

Sample Tests

import cs50
db = cs50.SQL("sqlite:///foo.db")
db.execute("CREATE TABLE IF NOT EXISTS cs50 (id INTEGER PRIMARY KEY, val TEXT, bin BLOB)")
db.execute("INSERT INTO cs50 (val) VALUES('a')")
db.execute("INSERT INTO cs50 (val) VALUES('b')")
db.execute("BEGIN")
db.execute("INSERT INTO cs50 (val) VALUES('c')")
db.execute("INSERT INTO cs50 (val) VALUES('x')")
db.execute("INSERT INTO cs50 (val) VALUES('y')")
db.execute("ROLLBACK")
db.execute("INSERT INTO cs50 (val) VALUES('z')")
db.execute("COMMIT")

---

import cs50
db = cs50.SQL("mysql://root@localhost/test")
db.execute("CREATE TABLE IF NOT EXISTS cs50 (id INTEGER PRIMARY KEY, val TEXT, bin BLOB)")
db.execute("INSERT INTO cs50 (val) VALUES('a')")
db.execute("INSERT INTO cs50 (val) VALUES('b')")
db.execute("BEGIN")
db.execute("INSERT INTO cs50 (val) VALUES('c')")
db.execute("INSERT INTO cs50 (val) VALUES('x')")
db.execute("INSERT INTO cs50 (val) VALUES('y')")
db.execute("ROLLBACK")
db.execute("INSERT INTO cs50 (val) VALUES('z')")
db.execute("COMMIT")

---

import cs50
db = cs50.SQL("postgresql://postgres@localhost/test")
db.execute("CREATE TABLE IF NOT EXISTS cs50 (id SERIAL PRIMARY KEY, val VARCHAR(16), bin BYTEA)")
db.execute("INSERT INTO cs50 (val) VALUES('a')")
db.execute("INSERT INTO cs50 (val) VALUES('b')")
db.execute("BEGIN")
db.execute("INSERT INTO cs50 (val) VALUES('c')")
db.execute("INSERT INTO cs50 (val) VALUES('x')")
db.execute("INSERT INTO cs50 (val) VALUES('y')")
db.execute("ROLLBACK")
db.execute("INSERT INTO cs50 (val) VALUES('z')")
db.execute("COMMIT")