計算機科学のブログ

ほしい物リスト

Python - SQL - SQLite - List Comprehensions: Database Integrations - tuple

Head First Python: A Learner’s Guide to the Fundamentals of Python Programming, A Brain-Friendly GuidePaul Barry(著)、 O’Reilly Mediaの Chapter 13.(List Comprehensions: Database Integrations)、EXERCISE(603/682)の解答を求めてみる。

Jupyter(コード、入出力結果)

webapp/TestDataUtils.ipynb

import data_utils
data = data_utils.get_swim_sessions()
data
[('2023-01-13 20:11:34',), ('2023-01-20 21:18:25',)]
[t[0].split()[0] for t in data]
['2023-01-13', '2023-01-20']
data = data_utils.get_session_swimmers('2023-01-20')
data
[('Abi', 10),
 ('Blake', 15),
 ('Darius', 13),
 ('Darius', 8),
 ('Dave', 17),
 ('Katie', 9),
 ('Maria', 9),
 ('Owen', 15)]
[f'{name}-{year}' for name, year in data]
['Abi-10',
 'Blake-15',
 'Darius-13',
 'Darius-8',
 'Dave-17',
 'Katie-9',
 'Maria-9',
 'Owen-15']
data = data_utils.get_swimmers_events('Darius', 8, '2023-01-20')
data
[('50m', 'Back'), ('50m', 'Free'), ('50m', 'Breast')]
print([f'{distance} {stroke}' for distance, stroke in data])
['50m Back', '50m Free', '50m Breast']
data = data_utils.get_swimmers_times('Darius', 8, '50m', 'Free', '2023-01-20')
data
[('39.42',), ('36.13',), ('37.66',), ('39.07',)]
print([time for time, *_ in data])
['39.42', '36.13', '37.66', '39.07']