Khóa học python

Đọc file trong Python

0 phút đọc

Trong Python, việc đọc file là một kỹ năng quan trọng và cần thiết cho các lập trình viên. Hiểu cách đọc dữ liệu từ file có thể mở rộng khả năng của các chương trình của bạn. Bài viết này sẽ hướng dẫn chi tiết cách đọc file trong Python, kèm theo các ví dụ minh họa.

Giới thiệu về đọc file trong Python

Các loại file

Python có thể xử lý hai loại file chính:

  • File văn bản (Text files): Các file này chứa dữ liệu dưới dạng văn bản và mỗi dòng được kết thúc bằng ký tự xuống dòng (\n).
  • File nhị phân (Binary files): Các file này chứa dữ liệu ở dạng nhị phân và không có ký tự kết thúc dòng.

Các chế độ mở file

Khi mở file trong Python, bạn cần chỉ định chế độ mở file. Các chế độ phổ biến bao gồm:

  • 'r': Mở file để đọc (mặc định).
  • 'w': Mở file để ghi, xóa nội dung file nếu file đã tồn tại.
  • 'a': Mở file để ghi, thêm nội dung vào cuối file nếu file đã tồn tại.
  • 'b': Mở file ở chế độ nhị phân.
  • '+': Mở file để đọc và ghi.

Mở và đóng file

Sử dụng hàm open()

Hàm open() được sử dụng để mở file. Hàm này trả về một đối tượng file, cho phép bạn thao tác với file.

# Mở file để đọc
f = open("example.txt", "r")

# Đóng file
f.close()

Sử dụng từ khóa with

Từ khóa with cung cấp một cách tiếp cận an toàn hơn để mở file, đảm bảo rằng file sẽ được đóng tự động sau khi khối lệnh bên trong with kết thúc.

# Mở file để đọc sử dụng từ khóa with
with open("example.txt", "r") as f:
    # Thao tác với file
    content = f.read()
    print(content)
# File sẽ tự động được đóng sau khi khối lệnh with kết thúc

Đọc file văn bản

Đọc toàn bộ nội dung file

Phương thức read() được sử dụng để đọc toàn bộ nội dung của file và trả về dưới dạng một chuỗi.

# Mở file để đọc
with open("example.txt", "r") as f:
    content = f.read()
    print(content)

Đọc một số byte nhất định

Bạn có thể chỉ định số byte cần đọc bằng cách truyền tham số vào phương thức read().

# Mở file để đọc
with open("example.txt", "r") as f:
    content = f.read(10)  # Đọc 10 byte đầu tiên
    print(content)

Đọc từng dòng

Phương thức readline() được sử dụng để đọc một dòng của file.

# Mở file để đọc
with open("example.txt", "r") as f:
    line = f.readline()
    print(line)

Đọc tất cả các dòng

Phương thức readlines() được sử dụng để đọc tất cả các dòng của file và trả về dưới dạng một danh sách các chuỗi.

# Mở file để đọc
with open("example.txt", "r") as f:
    lines = f.readlines()
    for line in lines:
        print(line.strip())  # Sử dụng strip() để loại bỏ ký tự xuống dòng

Đọc file bằng vòng lặp for

Bạn có thể sử dụng vòng lặp for để lặp qua từng dòng của file.

# Mở file để đọc
with open("example.txt", "r") as f:
    for line in f:
        print(line.strip())

Đọc file nhị phân

Mở file nhị phân

Để mở file nhị phân, bạn cần sử dụng chế độ 'rb'.

# Mở file nhị phân để đọc
with open("example.bin", "rb") as f:
    content = f.read()
    print(content)

Đọc một số byte nhất định từ file nhị phân

Bạn có thể chỉ định số byte cần đọc từ file nhị phân.

# Mở file nhị phân để đọc
with open("example.bin", "rb") as f:
    content = f.read(10)  # Đọc 10 byte đầu tiên
    print(content)

Kiểm tra sự tồn tại của file

Trước khi đọc file, bạn nên kiểm tra xem file có tồn tại hay không để tránh lỗi.

import os

file_path = "example.txt"
if os.path.exists(file_path):
    with open(file_path, "r") as f:
        content = f.read()
        print(content)
else:
    print(f"File {file_path} không tồn tại.")

Đọc file CSV

Sử dụng module csv

Python cung cấp module csv để làm việc với file CSV.

import csv

# Mở file CSV để đọc
with open("example.csv", "r") as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

Đọc file CSV vào danh sách từ điển

Bạn có thể sử dụng csv.DictReader để đọc file CSV vào danh sách các từ điển.

import csv

# Mở file CSV để đọc
with open("example.csv", "r") as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row)

Đọc file JSON

Sử dụng module json

Python cung cấp module json để làm việc với file JSON.

import json

# Mở file JSON để đọc
with open("example.json", "r") as f:
    data = json.load(f)
    print(data)

Đọc file bằng thư viện pandas

Thư viện pandas cung cấp các công cụ mạnh mẽ để đọc và xử lý dữ liệu từ các file CSV và Excel.

Đọc file CSV

import pandas as pd

# Đọc file CSV
df = pd.read_csv("example.csv")
print(df)

Đọc file Excel

import pandas as pd

# Đọc file Excel
df = pd.read_excel("example.xlsx")
print(df)

Đọc file bằng thư viện numpy

Thư viện numpy cung cấp các công cụ để đọc dữ liệu số từ các file văn bản.

Đọc file văn bản

import numpy as np

# Đọc file văn bản
data = np.loadtxt("example.txt")
print(data)

Đọc file CSV

import numpy as np

# Đọc file CSV
data = np.genfromtxt("example.csv", delimiter=",")
print(data)

Kết luận

Trong bài viết này, chúng ta đã tìm hiểu cách đọc file trong Python bằng nhiều phương pháp khác nhau, bao gồm sử dụng danh sách (list), module array, và thư viện numpy. Chúng ta cũng đã xem xét các phương pháp nâng cao để làm việc với mảng và các lưu ý khi làm việc với mảng. Hy vọng rằng các ví dụ minh họa này sẽ giúp bạn hiểu rõ hơn về cách làm việc với mảng trong Python và áp dụng chúng vào các bài toán thực tế của mình.

Avatar
Được viết bởi

TechMely Team

Gợi ý câu hỏi phỏng vấn

Gợi ý bài viết

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào

Khoá học javascript từ cơ bản đến chuyên sâuYoutube Techmely