Bài tập Tuple - Nâng cao
Các bài tập về Tuple - Nâng cao
Viết hàm
merge_tuplesnhận vào nhiều tuple (sử dụng *args) và trả về một tuple mới chứa tất cả các phần tử.
def merge_tuples(*tuples):
# Code của bạn ở đây
pass
# Test
result = merge_tuples((1, 2), (3, 4), (5, 6))
print(result) # (1, 2, 3, 4, 5, 6)Viết hàm
tuple_statsnhận vào một tuple chứa các số và trả về một tuple chứa (min, max, trung bình, tổng).
def tuple_stats(numbers):
# Code của bạn ở đây
pass
# Test
numbers = (10, 20, 30, 40, 50)
stats = tuple_stats(numbers)
print(stats) # (10, 50, 30.0, 150)Tạo tuple lồng nhau
studentschứa thông tin của 5 học sinh (mỗi học sinh là một tuple gồm tên, tuổi, điểm). Viết chương trình:
In ra thông tin của học sinh thứ 3
In ra tên của tất cả học sinh
Tìm học sinh có điểm cao nhất
Viết hàm
unpack_with_starnhận vào một tuple có ít nhất 3 phần tử và unpacking với cú phápfirst, *middle, last. In ra từng phần.
Viết hàm
reverse_tupleđảo ngược thứ tự các phần tử trong tuple và trả về tuple mới.
Gợi ý: Có thể dùng slicing [::-1] hoặc hàm reversed()
Viết hàm
find_duplicatesnhận vào một tuple và trả về tuple chứa các phần tử xuất hiện nhiều hơn 1 lần.
Viết hàm
tuple_intersectionnhận vào hai tuple và trả về tuple mới chứa các phần tử có trong cả hai tuple.
Viết hàm
tuple_differencenhận vào hai tuple và trả về tuple chứa các phần tử có trong tuple1 nhưng không có trong tuple2.
Viết hàm
sort_tuplenhận vào một tuple chứa các số và trả về tuple mới đã được sắp xếp tăng dần.
Gợi ý: Chuyển sang list, sort, rồi chuyển lại tuple
Viết hàm
split_tuplenhận vào một tuple và một số n, chia tuple thành hai tuple tại vị trí n.
Tạo dictionary với tuple làm key. Ví dụ: lưu trữ thông tin về các điểm trên bản đồ (toạ độ x, y) và tên địa điểm.
Viết hàm
flatten_tuplenhận vào một tuple lồng nhau và trả về tuple phẳng (không còn tuple con).
Gợi ý: Dùng đệ quy hoặc vòng lặp với isinstance()
Viết hàm
tuple_frequencynhận vào một tuple và trả về dictionary đếm số lần xuất hiện của mỗi phần tử.
Viết hàm
create_tuple_from_stringchuyển đổi một chuỗi thành tuple, trong đó mỗi từ là một phần tử.
Viết hàm
compare_tuplesnhận vào hai tuple và trả vềTruenếu chúng có cùng phần tử (không quan tâm thứ tự), ngược lại trả vềFalse.
Viết hàm
zip_tuplesnhận vào nhiều tuple có cùng độ dài và trả về tuple của các tuple (mỗi tuple con chứa các phần tử tại cùng vị trí).
Gợi ý: Dùng hàm zip() hoặc vòng lặp
Viết hàm
rotate_tuplenhận vào một tuple và số n, xoay tuple sang phải n vị trí.
Viết hàm
remove_itemnhận vào một tuple và một giá trị, trả về tuple mới không chứa giá trị đó (xoá tất cả các lần xuất hiện).
Viết hàm
get_unique_elementsnhận vào một tuple và trả về tuple mới chỉ chứa các phần tử duy nhất (không trùng lặp), giữ nguyên thứ tự xuất hiện đầu tiên.
Viết hàm
partition_tuplenhận vào một tuple chứa các số và một giá trị pivot, trả về hai tuple: một chứa các số nhỏ hơn pivot, một chứa các số lớn hơn hoặc bằng pivot.
Viết chương trình tạo tuple chứa 10 số ngẫu nhiên từ 1 đến 100, sau đó:
Tính giá trị trung bình
Tìm phương sai (variance)
Tìm độ lệch chuẩn (standard deviation)
Gợi ý: Dùng module random để tạo số ngẫu nhiên
Viết hàm
most_commonnhận vào một tuple và trả về phần tử xuất hiện nhiều nhất.
Viết hàm
tuple_productnhận vào một tuple chứa các số và trả về tích của tất cả các số.
Viết hàm
alternate_elementsnhận vào hai tuple và trả về tuple mới chứa các phần tử xen kẽ từ hai tuple.
Viết hàm
cumulative_sumnhận vào một tuple chứa các số và trả về tuple mới chứa tổng tích lũy.
Last updated