tritue.edu.vn


Bài 25. Kiểu tệp

1. Khái niệm tệp và phân loại

Khái niệm: Tệp hay còn được gọi là tập tin, là một tập hợp các thông tin ghi trên bộ nhớ ngoài, tạo thành một đơn vị lưu trữ do hệ điều hành quản lý.

Lượng lưu trữ thông tin trên tệp rất lớn và chỉ phụ thuộc vào dung lượng đĩa. Ký tự lưu trong tệp không chỉ theo mã ASCII mà còn được ghi theo mã UNICODE.

Phân loại: Để phân loại tệp sẽ dựa vào 2 tiêu chí: Xét theo cách tổ chức dữ liệu và Xét theo cách thức truy cập.

Xét theo cách tổ chức dữ liệu: Tệp sẽ được phân làm 2 loại: 

  • Tệp văn bản: Là tệp mà dữ liệu gồm các ký tự theo mã ASCII hoặc mã UNICODE.
  • Tệp có cấu trúc: Là tệp mà các thành phần của nó được tổ chức theo một cấu trúc nhất định.

Xét theo cách thức truy cập: Tệp sẽ được phân làm 2 loại: 

  •  Tệp truy cập tuần tự: Là tệp truy cập đến dữ liệu bằng cách bắt đầu từ tệp và đi qua lần lượt tất cả các dữ liệu trước nó.
  •  Tệp truy cập trực tiếp: Là tệp tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của nó.

2. Trình tự thao tác file

Khi muốn đọc hoặc ghi file, chúng ta cần phải mới file trước. Khi hoàn thành, file cần phải được đóng lại để các tài nguyên được gắn với file được giải phóng.

Do đó, trong Python, một thao tác với file diễn ra theo thứ tự:

  • Mở tệp tin.
  • Đọc hoặc ghi.
  • Đóng tệp.


Mở tệp

Copy
         

Trước khi làm việc với bất cứ file nào, bạn phải mở file đó. Để mở một file, Python cung cấp hàm open(). Nó trả về một đối tượng file mà được sử dụng với các hàm khác. Với file đã mở, bạn có thể thực hiện các hoạt động như đọc, ghi mới, ghi thêm … trên file đó.

- Cú pháp:

file object = open(file_name [, access_mode][, buffering])

Trong đó:

  • filename: Đối số file_name là một giá trị chuỗi chứa tên của các file mà bạn muốn truy cập.
  • access_mode: Các access_mode xác định các chế độ của file được mở ra như read, write, append,... Đây là thông số tùy chọn và chế độ truy cập file mặc định là read (r).
  • buffering: Nếu buffer được thiết lập là 0, nghĩa là sẽ không có trình đệm nào diễn ra. Nếu xác định là 1, thì trình đệm dòng được thực hiện trong khi truy cập một File. Nếu là số nguyên lớn hơn 1, thì hoạt động đệm được thực hiện với kích cỡ bộ đệm đã cho. Nếu là số âm, thì kích cỡ bộ đệm sẽ là mặc định.

Dưới đây là một danh sách các chế độ khác nhau của việc mở một file:

Mode Mô tả
r Mở file chỉ để đọc
r+ Mở file để đọc và ghi
rb Mở file trong chế độ đọc cho định dạng nhị phân, đây là chế độ mặc định. Con trỏ tại phần bắt đầu của file
rb+ Mở file để đọc và ghi trong định dạng nhị phân. Con trỏ tại phần bắt đầu của file
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
wb Mở file trong chế độ ghi trong định dạng nhị phân. Nếu file đã tồn tại, thì ghi đè nội dung của file đó, nếu không thì tạo một file mới
wb+ Mở file để đọc và ghi trong định dạng nhị phân. Nếu file tồn tại thì ghi đè nội dung của nó, nếu file không tồn tại thì tạo một file mới để đọc và ghi
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
ab Mở file trong chế độ append trong chế độ nhị phân. Con trỏ là ở cuối file nếu file này đã tồn tại. Nếu file không tồn tại, thì tạo một file mới để ghi
ab+ Mở file trong để đọc và append trong định dạng nhị phân. Con trỏ file tại cuối nếu file đã tồn tại. Nếu không tồn tại thì tạo một file mới để đọc và ghi

- Thuộc tính của File

Thuộc tính Mô tả
file.closed Trả về True nếu file đã đóng, ngược lại là False
file.mode Trả về chế độ truy cập của file đang được mở
file.name Trả về tên của file

 

VD: 

tep=open('vidu1.txt','r')
noidung=tep.read()
print(noidung)

 




Link chia sẻ bài viết
Copy
            https://tritue.edu.vn/tuecode/tracnghiem30/index.php/baiviet/post/view/id/216?id=216         

Bài viết liên quan