Python - SQL - SQLite - List Comprehensions: Database Integrations - tuple
Head First Python: A Learner’s Guide to the Fundamentals of Python Programming, A Brain-Friendly Guide、 Paul 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']