STDIO
Tìm kiếm gần đây
    • Nội dung
    • QR Code
    • 0
    • 0
    • Sao chép

    Đọc và Ghi File trong Python

    Đọc và ghi file text với Python thông qua code ví dụ với các mode cơ bản và hữu ích.

    Ryan

    28/03/2015
    29/09/2020
    4 phút đọc
    Đọc và Ghi File trong Python

    Đọc và ghi file là một trong những kỹ thuật vô cùng quan trọng và không thể thiếu trong phần mềm, xử lý file trong Python không khó so với các ngôn ngữ khác.

    Khái niệm file

    File hay còn gọi là tệp, tập tin. File là tập hợp của các thông tin được đặt tên được lưu trữ trên bộ nhớ máy tính như đĩa cứng, đĩa mềm, CD, DVD, ... hiểu theo một cách khác thì File chính là một dãy bit có tên và được lưu trữ trên các thiết bị bộ nhớ của máy tính.

    Có 2 loại file thông dụng là file văn bản (text file), file nhị phân (binary file), trong bài viết hướng đến là file văn bản.

    File hỗ trợ cho việc lưu trữ các thông tin của phần mềm đó trong quá trình hoạt động.

    • Khi xây dựng một game, bạn cần file để lưu trữ các dữ liệu như toạ độ, điểm số, tiền, năng lượng.
    • Khi xây dựng một hệ thống quản lý, ứng dụng web, ... cần lưu trữ các thông tin liên quan như hình ảnh người dùng, sản phẩm.

    Mở file

    Để có thể đọc và ghi một file thì mở file là công việc đầu tiên. Python cho phép chúng ta thực hiện điều đó với hàm open.

    Cú pháp

    open(fileName, mode)

    Trong đó

    • fileName: tên của tập tin cần mở.
    • mode: quy định cách thức mà tập tin. Khi mode bị bỏ qua thì mặc định sẽ là ký tự r.

    Ta có các mô tả mode sau:

     Mode  Mô tả
    r Mở file chỉ để đọc.
    r+ Mở file để đọc và ghi.
    w Tạo một file mới để ghi, nếu file đã tồn tại thì sẽ bị ghi mới.
    w+ Tạo một file mới để đọc và ghi, nếu file tồn tại thì sẽ bị ghi mới.
    a Mở file để ghi thêm vào cuối file, nếu không tìm thấy file sẽ tạo mới một file để ghi mới.
    a+ Mở file để đọc và ghi thêm vào cuối file, nếu không tìm thấy file sẽ tạo mới một file để đọc và ghi mới.

    Ví dụ

    f = open('demo_file.txt', 'r')

    Ngoài ra Windows còn hỗ trợ các mode để đọc và ghi file ở chế độ nhị phân như: rb, rb+, wb, wb+ab, ab+.

    Đọc file

    Giả sử có một tập tin demo_file.txt với nội dung như sau:

    Hello all!
    Welcome to STDIO.

    Sử dụng tập tin này cho các ví dụ về đọc file trong bài viết này, có nhiều phương thức để đọc được dữ liệu từ file, dưới đây chỉ ra một vài cách đọc file cần thiết.

    Đọc file với phương thức read

    Cú pháp

    f.read([size]);

    Phương thức này cho phép ta đọc một lượng dữ liệu tương ứng với size và trả về một chuỗi. Khi size bị bỏ qua thì toàn bộ nội dung của file sẽ được đọc. 

    Ví dụ

    #!/usr/bin/python
    f = open('demo_file.txt', 'r')
    
    str = f.read()
    
    print ('Noi dung file cua ban la:\n', str)
    

    Kết quả in ra màn hình

    Noi dung file cua ban la:
    Hello all!
    Welcome to STDIO.

    Đọc file với phương thức readline

    Cú pháp

    f.readline();

    Phương thức này cho phép đọc một dòng trong file và trả về chuỗi. 

    Ví dụ

    #!/usr/bin/python
    f = open('demo_file.txt', 'r')
    
    line1 = f.readline()
    line2 = f.readline()
    
    print ('Dong 1 cua file: ', line1)
    print ('Dong 2 cua file: ', line2)
    

    Kết quả in ra màn hình

    Dong 1 cua file:  Hello all!
    Dong 2 cua file:  Welcome to STDIO.

    * Ký tự \n sẽ được đọc và trả về ở cuối chuỗi nếu đọc file theo phương thức này.

    Ghi file

    Tương tự đọc file, để ghi một file ta cần mở file bằng cú pháp để ghi và sử dụng phương thức write để ghi vào.

    Cú pháp

    f.write(fileName)

    Phương thức này cho phép ghi một chuỗi có nội dung là string vào vị trí của con trỏ trong tập tin.

    Ví dụ 

    #!/usr/bin/python
    info = 'Name: Thanh\n'
    
    f = open('demo_file2.txt', 'w')
    
    f.write(info)
    

    Ví dụ trên thực hiện ghi thông tin cá nhân tương ứng với biến info ở trong ví dụ vào một file mới demo_file2.txt. Và sau đây là nội dung bên trong file sau khi hoàn thành ví dụ trên.

    Name: Thanh

    Đóng File

    Cú pháp

    f.close()

    Ví dụ 

    #!/usr/bin/python
    info = 'Name: Thanh\n'
    
    f = open('demo_file2.txt', 'w')
    
    f.write(info)
    0 Bình luận

    Khoá học Python Online căn bản

    199,000₫ 600,000₫

    Sách - 90 Ngày Đầu Tiên Làm Sếp

    139,000₫
    Python

    Python

    Python từ cơ bản đến ứng dụng.

    Đề xuất

    Đọc Ghi File Cơ Bản Trong C#
    Hướng dẫn đọc và ghi file cơ bản sử dụng đối tượng File trong C#. Nhờ có ...
    Căn Bản về Đọc và Ghi File trong Ngôn Ngữ C++
    Căn bản về thao tác đọc/ghi file trong C++.
    22/07/2015

    Khám phá

    Cấu Trúc File CSV và Cách Đọc - Ghi File CSV
    File .csv là gì, cấu trúc file CSV - cách tạo, đọc ghi file csv với các ...
    Đọc Ghi File Cơ Bản với fstream
    Sử dụng fstream để đọc file, ghi file, xử lý file đơn giản trong C++.
    04/08/2014
    Xử Lý File trong PHP
    Đọc ghi, làm việc và xử lý file trong PHP.
    12/05/2017
    Đọc Ghi Tất Cả Các Định Dạng Ảnh với FreeImage trong C++
    Hướng dẫn sử dụng FreeImage để đọc, ghi, xử lý ảnh trong C++.
    28/09/2014
    Bitmap - Khái Niệm Và Các Xử Lý Cơ Bản
    Kiến trúc file bmp và đọc ghi file bmp bằng C/C++.
    Lưu Trữ Dữ Liệu trong Android với Unity
    Hướng dẫn đọc và ghi file trên Android với đường dẫn ...
    Định Dạng Ảnh Bitmap - Giới Thiệu và Các Thao Tác Cơ Bản
    Trong đời thường, bạn sẽ gặp các file ảnh có định dạng .PNG, .JPG, .TGA, ...
    Tìm Hiểu về fstream
    Kiến thức về file là một trong những kiến thức quan trọng đối với các ...
    11/05/2015
    Khi bạn nhấn vào liên kết sản phẩm do STDIO đề xuất và mua hàng, STDIO có thể nhận được hoa hồng. Điều này hỗ trợ STDIO tạo thêm nhiều nội dung hữu ích. Tìm hiểu thêm.
    STDIO
    Trang chính
    Công ty TNHH STDIO

    30, Trịnh Đình Thảo, Hòa Thạnh, Tân Phú, Hồ Chí Minh
    +84 28.36205514 - +84 942.111912
    developer@stdio.vn

    383/1 Quang Trung, Phường 10, Quận Gò Vấp, Hồ Chí Minh
    Số giấy phép ĐKKD: 0311563559 do sở Kế hoạch và Đầu Tư TPHCM cấp ngày 23/02/2012

    ©STDIO, 2013 - 2020