Ôn tập Python lớp 9: Hàm, tệp văn bản và xử lý lỗi

Ôn tập hàm, tệp văn bản và xử lý lỗi Python lớp 9 qua 5 bài tập có gợi ý và lời giải hoàn chỉnh.

Ôn tập Python lớp 9: Hàm, tệp văn bản và xử lý lỗi

Ôn tập Python lớp 9: Hàm, tệp văn bản và xử lý lỗi

Khởi động

Bài ôn tập này giúp em củng cố cách tạo hàm bằng def, trả kết quả bằng return, đọc và ghi tệp bằng open(), đồng thời xử lý lỗi với try và except. Mỗi bài đều có đề bài, gợi ý và lời giải hoàn chỉnh.

Bài 1: Tính diện tích hình chữ nhật bằng hàm

Đề bài: Viết hàm nhận chiều dài và chiều rộng, sau đó trả về diện tích hình chữ nhật.

Gợi ý: Tạo hàm rectangle_area(length, width). Diện tích bằng chiều dài nhân chiều rộng.

def rectangle_area(length, width):
    return length * width

length = float(input("Nhập chiều dài: "))
width = float(input("Nhập chiều rộng: "))

if length <= 0 or width <= 0:
    print("Kích thước phải lớn hơn 0.")
else:
    area = rectangle_area(length, width)
    print("Diện tích hình chữ nhật là:", area)

Hãy thử nhập số nguyên, số thập phân và giá trị bằng 0.

Bài 2: Kiểm tra số chẵn

Đề bài: Viết hàm trả về True nếu một số là số chẵn, ngược lại trả về False.

Gợi ý: Một số chẵn khi chia cho 2 có phần dư bằng 0.

def is_even(number):
    return number % 2 == 0

number = int(input("Nhập một số nguyên: "))

if is_even(number):
    print(number, "là số chẵn.")
else:
    print(number, "là số lẻ.")

Bài 3: Ghi danh sách điểm vào tệp

Đề bài: Ghi các điểm trong danh sách vào tệp diem.txt, mỗi điểm nằm trên một dòng.

Gợi ý: Mở tệp bằng chế độ "w". Dùng vòng lặp để ghi từng điểm kèm ký tự xuống dòng.

scores = [7.5, 8.0, 9.25, 6.5, 8.75]

with open("diem.txt", "w", encoding="utf-8") as file:
    for score in scores:
        file.write(str(score) + "\n")

print("Đã ghi điểm vào tệp diem.txt.")

Sau khi chạy, tệp diem.txt sẽ được tạo trong cùng thư mục với tệp Python.

Bài 4: Đọc dữ liệu từ tệp

Đề bài: Đọc các điểm trong tệp diem.txt và tính điểm lớn nhất.

Gợi ý: Mở tệp bằng chế độ "r", loại bỏ ký tự xuống dòng bằng strip() rồi chuyển dữ liệu sang float.

try:
    with open("diem.txt", "r", encoding="utf-8") as file:
        lines = file.readlines()

    scores = []

    for line in lines:
        score = float(line.strip())
        scores.append(score)

    if len(scores) == 0:
        print("Tệp không có dữ liệu.")
    else:
        print("Điểm lớn nhất là:", max(scores))

except FileNotFoundError:
    print("Không tìm thấy tệp diem.txt.")
except ValueError:
    print("Tệp chứa dữ liệu không phải là số.")

Bài 5: Máy tính an toàn

Đề bài: Viết chương trình nhập hai số và phép tính +, -, *, /. Xử lý trường hợp nhập sai dữ liệu hoặc chia cho 0.

Gợi ý: Đặt phần chuyển đổi số trong khối try. Dùng except ValueError để xử lý dữ liệu không hợp lệ.

try:
    first = float(input("Nhập số thứ nhất: "))
    second = float(input("Nhập số thứ hai: "))
    operator = input("Nhập phép tính (+, -, *, /): ").strip()

    if operator == "+":
        result = first + second
    elif operator == "-":
        result = first - second
    elif operator == "*":
        result = first * second
    elif operator == "/":
        if second == 0:
            print("Không thể chia cho 0.")
        else:
            result = first / second
    else:
        print("Phép tính không hợp lệ.")

    if operator in ["+", "-", "*"] or (operator == "/" and second != 0):
        print("Kết quả:", result)

except ValueError:
    print("Em phải nhập dữ liệu dạng số.")

Đọc tiếp bài viết trong Seri Python lớp 9: Ôn tập Python lớp 9: Thuật toán, tìm kiếm và xử lý dữ liệu

Ôn luyện thêm

Em hãy kết hợp hàm và tệp: viết hàm đọc điểm từ tệp, hàm tính điểm trung bình và hàm tìm điểm cao nhất. Khi chia chương trình thành các hàm nhỏ, code dễ đọc, dễ kiểm tra và có thể sử dụng lại.

Từ khoá: on tap python lop 9 ham tep van ban va xu ly loi, Ôn tập Python lớp 9, hàm Python, đọc ghi tệp Python, xử lý lỗi Python, bài tập Python THCS

How To 60s

How To 60s

How To 60s - Tổng hợp Giáo án và đề thi THCS chương trình mới KNTT, CTST. Thủ thuật excel, word, powerpoint, windows. Mẹo vặt máy tính giúp công việc đơn giản hơn. Chia sẻ những kinh nghiệm, thủ thuật hay trong công việc và cuộc sống hàng ngày