diff --git a/Doc/lib/sqlite3/adapter_datetime.py b/Doc/lib/sqlite3/adapter_datetime.py index 34604985c124..5869e22b32f5 100644 --- a/Doc/lib/sqlite3/adapter_datetime.py +++ b/Doc/lib/sqlite3/adapter_datetime.py @@ -11,4 +11,4 @@ def adapt_datetime(ts): now = datetime.datetime.now() cur.execute("select ?", (now,)) -print cur.fetchone()[0] +print(cur.fetchone()[0]) diff --git a/Doc/lib/sqlite3/adapter_point_1.py b/Doc/lib/sqlite3/adapter_point_1.py index a741f6c25a19..1343acde3cd1 100644 --- a/Doc/lib/sqlite3/adapter_point_1.py +++ b/Doc/lib/sqlite3/adapter_point_1.py @@ -13,4 +13,4 @@ def __conform__(self, protocol): p = Point(4.0, -3.2) cur.execute("select ?", (p,)) -print cur.fetchone()[0] +print(cur.fetchone()[0]) diff --git a/Doc/lib/sqlite3/adapter_point_2.py b/Doc/lib/sqlite3/adapter_point_2.py index 200a064eace7..1e1719a3cc02 100644 --- a/Doc/lib/sqlite3/adapter_point_2.py +++ b/Doc/lib/sqlite3/adapter_point_2.py @@ -14,4 +14,4 @@ def adapt_point(point): p = Point(4.0, -3.2) cur.execute("select ?", (p,)) -print cur.fetchone()[0] +print(cur.fetchone()[0]) diff --git a/Doc/lib/sqlite3/collation_reverse.py b/Doc/lib/sqlite3/collation_reverse.py index e9564023d3d4..bfd7f5bd9f0c 100644 --- a/Doc/lib/sqlite3/collation_reverse.py +++ b/Doc/lib/sqlite3/collation_reverse.py @@ -11,5 +11,5 @@ def collate_reverse(string1, string2): cur.executemany("insert into test(x) values (?)", [("a",), ("b",)]) cur.execute("select x from test order by x collate reverse") for row in cur: - print row + print(row) con.close() diff --git a/Doc/lib/sqlite3/complete_statement.py b/Doc/lib/sqlite3/complete_statement.py index 76ea7f6a66ab..cd38d7305bb6 100644 --- a/Doc/lib/sqlite3/complete_statement.py +++ b/Doc/lib/sqlite3/complete_statement.py @@ -8,11 +8,11 @@ buffer = "" -print "Enter your SQL commands to execute in sqlite3." -print "Enter a blank line to exit." +print("Enter your SQL commands to execute in sqlite3.") +print("Enter a blank line to exit.") while True: - line = raw_input() + line = input() if line == "": break buffer += line @@ -22,9 +22,9 @@ cur.execute(buffer) if buffer.lstrip().upper().startswith("SELECT"): - print cur.fetchall() + print(cur.fetchall()) except sqlite3.Error as e: - print "An error occurred:", e.args[0] + print("An error occurred:", e.args[0]) buffer = "" con.close() diff --git a/Doc/lib/sqlite3/converter_point.py b/Doc/lib/sqlite3/converter_point.py index e220e9b0807e..d0707abd2e2c 100644 --- a/Doc/lib/sqlite3/converter_point.py +++ b/Doc/lib/sqlite3/converter_point.py @@ -11,7 +11,7 @@ def adapt_point(point): return "%f;%f" % (point.x, point.y) def convert_point(s): - x, y = map(float, s.split(";")) + x, y = list(map(float, s.split(";"))) return Point(x, y) # Register the adapter @@ -30,7 +30,7 @@ def convert_point(s): cur.execute("insert into test(p) values (?)", (p,)) cur.execute("select p from test") -print "with declared types:", cur.fetchone()[0] +print("with declared types:", cur.fetchone()[0]) cur.close() con.close() @@ -42,6 +42,6 @@ def convert_point(s): cur.execute("insert into test(p) values (?)", (p,)) cur.execute('select p as "p [point]" from test') -print "with column names:", cur.fetchone()[0] +print("with column names:", cur.fetchone()[0]) cur.close() con.close() diff --git a/Doc/lib/sqlite3/countcursors.py b/Doc/lib/sqlite3/countcursors.py index df04cad595fd..ef3e70a2a9cf 100644 --- a/Doc/lib/sqlite3/countcursors.py +++ b/Doc/lib/sqlite3/countcursors.py @@ -12,4 +12,4 @@ def cursor(self, *args, **kwargs): con = sqlite3.connect(":memory:", factory=CountCursorsConnection) cur1 = con.cursor() cur2 = con.cursor() -print con.numcursors +print(con.numcursors) diff --git a/Doc/lib/sqlite3/execsql_fetchonerow.py b/Doc/lib/sqlite3/execsql_fetchonerow.py index 8044ecf95067..078873bfc979 100644 --- a/Doc/lib/sqlite3/execsql_fetchonerow.py +++ b/Doc/lib/sqlite3/execsql_fetchonerow.py @@ -9,9 +9,9 @@ # resulting sequences to yield their elements (name_last, age): cur.execute(SELECT) for (name_last, age) in cur: - print '%s is %d years old.' % (name_last, age) + print('%s is %d years old.' % (name_last, age)) # 2. Equivalently: cur.execute(SELECT) for row in cur: - print '%s is %d years old.' % (row[0], row[1]) + print('%s is %d years old.' % (row[0], row[1])) diff --git a/Doc/lib/sqlite3/execsql_printall_1.py b/Doc/lib/sqlite3/execsql_printall_1.py index d27d735a2846..a4ce5c528149 100644 --- a/Doc/lib/sqlite3/execsql_printall_1.py +++ b/Doc/lib/sqlite3/execsql_printall_1.py @@ -10,4 +10,4 @@ cur.execute("select * from people order by age") # Retrieve all rows as a sequence and print that sequence: -print cur.fetchall() +print(cur.fetchall()) diff --git a/Doc/lib/sqlite3/execute_1.py b/Doc/lib/sqlite3/execute_1.py index fb3784ffb3ba..3d08840b86c2 100644 --- a/Doc/lib/sqlite3/execute_1.py +++ b/Doc/lib/sqlite3/execute_1.py @@ -8,4 +8,4 @@ age = 72 cur.execute("select name_last, age from people where name_last=? and age=?", (who, age)) -print cur.fetchone() +print(cur.fetchone()) diff --git a/Doc/lib/sqlite3/execute_2.py b/Doc/lib/sqlite3/execute_2.py index df6c8940ebf3..84734f967ff7 100644 --- a/Doc/lib/sqlite3/execute_2.py +++ b/Doc/lib/sqlite3/execute_2.py @@ -9,4 +9,4 @@ cur.execute("select name_last, age from people where name_last=:who and age=:age", {"who": who, "age": age}) -print cur.fetchone() +print(cur.fetchone()) diff --git a/Doc/lib/sqlite3/execute_3.py b/Doc/lib/sqlite3/execute_3.py index b64621fc04b3..0353683fc704 100644 --- a/Doc/lib/sqlite3/execute_3.py +++ b/Doc/lib/sqlite3/execute_3.py @@ -9,4 +9,4 @@ cur.execute("select name_last, age from people where name_last=:who and age=:age", locals()) -print cur.fetchone() +print(cur.fetchone()) diff --git a/Doc/lib/sqlite3/executemany_1.py b/Doc/lib/sqlite3/executemany_1.py index 2dc72cd2c5fe..efae10637c7e 100644 --- a/Doc/lib/sqlite3/executemany_1.py +++ b/Doc/lib/sqlite3/executemany_1.py @@ -21,4 +21,4 @@ def __next__(self): cur.executemany("insert into characters(c) values (?)", theIter) cur.execute("select c from characters") -print cur.fetchall() +print(cur.fetchall()) diff --git a/Doc/lib/sqlite3/executemany_2.py b/Doc/lib/sqlite3/executemany_2.py index 05857c0bde63..518cd9430d2d 100644 --- a/Doc/lib/sqlite3/executemany_2.py +++ b/Doc/lib/sqlite3/executemany_2.py @@ -12,4 +12,4 @@ def char_generator(): cur.executemany("insert into characters(c) values (?)", char_generator()) cur.execute("select c from characters") -print cur.fetchall() +print(cur.fetchall()) diff --git a/Doc/lib/sqlite3/md5func.py b/Doc/lib/sqlite3/md5func.py index 5769687d9cb0..b7bc05b379da 100644 --- a/Doc/lib/sqlite3/md5func.py +++ b/Doc/lib/sqlite3/md5func.py @@ -1,11 +1,11 @@ import sqlite3 -import md5 +import hashlib def md5sum(t): - return md5.md5(t).hexdigest() + return hashlib.md5(t).hexdigest() con = sqlite3.connect(":memory:") con.create_function("md5", 1, md5sum) cur = con.cursor() cur.execute("select md5(?)", ("foo",)) -print cur.fetchone()[0] +print(cur.fetchone()[0]) diff --git a/Doc/lib/sqlite3/mysumaggr.py b/Doc/lib/sqlite3/mysumaggr.py index 6d0cd551d593..d2dfd2c0b98d 100644 --- a/Doc/lib/sqlite3/mysumaggr.py +++ b/Doc/lib/sqlite3/mysumaggr.py @@ -17,4 +17,4 @@ def finalize(self): cur.execute("insert into test(i) values (1)") cur.execute("insert into test(i) values (2)") cur.execute("select mysum(i) from test") -print cur.fetchone()[0] +print(cur.fetchone()[0]) diff --git a/Doc/lib/sqlite3/parse_colnames.py b/Doc/lib/sqlite3/parse_colnames.py index fcded00f3c29..cc68c76459ec 100644 --- a/Doc/lib/sqlite3/parse_colnames.py +++ b/Doc/lib/sqlite3/parse_colnames.py @@ -5,4 +5,4 @@ cur = con.cursor() cur.execute('select ? as "x [timestamp]"', (datetime.datetime.now(),)) dt = cur.fetchone()[0] -print dt, type(dt) +print(dt, type(dt)) diff --git a/Doc/lib/sqlite3/pysqlite_datetime.py b/Doc/lib/sqlite3/pysqlite_datetime.py index efa4b06ceafa..68d49358a578 100644 --- a/Doc/lib/sqlite3/pysqlite_datetime.py +++ b/Doc/lib/sqlite3/pysqlite_datetime.py @@ -11,10 +11,10 @@ cur.execute("insert into test(d, ts) values (?, ?)", (today, now)) cur.execute("select d, ts from test") row = cur.fetchone() -print today, "=>", row[0], type(row[0]) -print now, "=>", row[1], type(row[1]) +print(today, "=>", row[0], type(row[0])) +print(now, "=>", row[1], type(row[1])) cur.execute('select current_date as "d [date]", current_timestamp as "ts [timestamp]"') row = cur.fetchone() -print "current_date", row[0], type(row[0]) -print "current_timestamp", row[1], type(row[1]) +print("current_date", row[0], type(row[0])) +print("current_timestamp", row[1], type(row[1])) diff --git a/Doc/lib/sqlite3/row_factory.py b/Doc/lib/sqlite3/row_factory.py index 64676c8f3f62..e436ffc6c802 100644 --- a/Doc/lib/sqlite3/row_factory.py +++ b/Doc/lib/sqlite3/row_factory.py @@ -10,4 +10,4 @@ def dict_factory(cursor, row): con.row_factory = dict_factory cur = con.cursor() cur.execute("select 1 as a") -print cur.fetchone()["a"] +print(cur.fetchone()["a"]) diff --git a/Doc/lib/sqlite3/shortcut_methods.py b/Doc/lib/sqlite3/shortcut_methods.py index 72ed4b3712c8..596d87c18e0c 100644 --- a/Doc/lib/sqlite3/shortcut_methods.py +++ b/Doc/lib/sqlite3/shortcut_methods.py @@ -15,7 +15,7 @@ # Print the table contents for row in con.execute("select firstname, lastname from person"): - print row + print(row) # Using a dummy WHERE clause to not let SQLite take the shortcut table deletes. -print "I just deleted", con.execute("delete from person where 1=1").rowcount, "rows" +print("I just deleted", con.execute("delete from person where 1=1").rowcount, "rows") diff --git a/Doc/lib/sqlite3/simple_tableprinter.py b/Doc/lib/sqlite3/simple_tableprinter.py index 67ea6a2b192f..231d8726cd43 100644 --- a/Doc/lib/sqlite3/simple_tableprinter.py +++ b/Doc/lib/sqlite3/simple_tableprinter.py @@ -11,9 +11,9 @@ # Print a header. for fieldDesc in cur.description: - print fieldDesc[0].ljust(FIELD_MAX_WIDTH) , -print # Finish the header with a newline. -print '-' * 78 + print(fieldDesc[0].ljust(FIELD_MAX_WIDTH), end=' ') +print() # Finish the header with a newline. +print('-' * 78) # For each row, print the value of each field left-justified within # the maximum possible width of that field. @@ -21,6 +21,6 @@ for row in cur: for fieldIndex in fieldIndices: fieldValue = str(row[fieldIndex]) - print fieldValue.ljust(FIELD_MAX_WIDTH) , + print(fieldValue.ljust(FIELD_MAX_WIDTH), end=' ') - print # Finish the row with a newline. + print() # Finish the row with a newline. diff --git a/Doc/lib/sqlite3/text_factory.py b/Doc/lib/sqlite3/text_factory.py index 3e157a8ea9f7..2dab8e453f95 100644 --- a/Doc/lib/sqlite3/text_factory.py +++ b/Doc/lib/sqlite3/text_factory.py @@ -6,7 +6,7 @@ # Create the table con.execute("create table person(lastname, firstname)") -AUSTRIA = u"\xd6sterreich" +AUSTRIA = "\xd6sterreich" # by default, rows are returned as Unicode cur.execute("select ?", (AUSTRIA,)) @@ -25,17 +25,17 @@ # we can also implement a custom text_factory ... # here we implement one that will ignore Unicode characters that cannot be # decoded from UTF-8 -con.text_factory = lambda x: unicode(x, "utf-8", "ignore") -cur.execute("select ?", ("this is latin1 and would normally create errors" + u"\xe4\xf6\xfc".encode("latin1"),)) +con.text_factory = lambda x: str(x, "utf-8", "ignore") +cur.execute("select ?", ("this is latin1 and would normally create errors" + "\xe4\xf6\xfc".encode("latin1"),)) row = cur.fetchone() -assert type(row[0]) == unicode +assert type(row[0]) == str # pysqlite offers a builtin optimized text_factory that will return bytestring # objects, if the data is in ASCII only, and otherwise return unicode objects con.text_factory = sqlite3.OptimizedUnicode cur.execute("select ?", (AUSTRIA,)) row = cur.fetchone() -assert type(row[0]) == unicode +assert type(row[0]) == str cur.execute("select ?", ("Germany",)) row = cur.fetchone()