初心者向けのPythonのプログラミング問題です。入門編としてチャレンジしてください。Pythonの正答例は以下になります。
問題742
def filter_and_sort_by_start(lst, ch):
filtered = [w for w in lst if w.startswith(ch)]
return sorted(filtered, key=len)
# 呼び出し例
words = [“apple”, “ant”, “banana”, “anchor”]
print(filter_and_sort_by_start(words, “a”))
# 出力: [‘ant’, ‘apple’, ‘anchor’]
問題743
def closest_to_median(lst):
lst_sorted = sorted(lst)
n = len(lst_sorted)
median = lst_sorted[n//2] if n % 2 else (lst_sorted[n//2 – 1] + lst_sorted[n//2]) / 2
return min(lst_sorted, key=lambda x: abs(x – median))
# 呼び出し例
lst = [1, 3, 5, 7, 9]
print(closest_to_median(lst)) # 出力: 5
問題744
def sort_students(data):
return sorted(data, key=lambda x: (-x[1], x[0]))
# 呼び出し例
students = [(“Bob”, 80), (“Alice”, 80), (“Charlie”, 75)]
print(sort_students(students))
# 出力: [(‘Alice’, 80), (‘Bob’, 80), (‘Charlie’, 75)]



コメント