Trong hướng dẫn Python này, bạn sẽ tìm hiểu về cách mở, đọc, viết và đóng tệp. Chúng tôi cũng sẽ đề cập đến việc sử dụng câu lệnh “with” trong bài đăng này.

Bạn đang xem : cách mở tệp python

Cách mở tệp bằng Python

Python là một trong những ngôn ngữ lập trình phổ biến nhất và không giống như một số ngôn ngữ khác, Python không yêu cầu bạn nhập thư viện để làm việc với tệp. < / p>

Các tệp được xử lý nguyên bản bằng Python ; tuy nhiên, các phương pháp làm việc với tệp khác với các ngôn ngữ khác.

Trong hướng dẫn Python này, bạn sẽ tìm hiểu về cách mở, đọc, ghi và đóng tệp. Chúng tôi cũng sẽ đề cập đến việc sử dụng câu lệnh “with” trong bài đăng này.

Cách mở tệp bằng Python?

Python đi kèm với các hàm cho phép tạo, mở, đóng, đọc và ghi tệp được tích hợp sẵn. Mở một tệp bằng Python cũng đơn giản như sử dụng hàm open () có sẵn trong mọi phiên bản Python. Hàm trả về một “đối tượng tệp”.

Đối tượng tệp bao gồm các phương thức và thuộc tính có thể được sử dụng để thu thập thông tin về tệp bạn mở. Hơn nữa, những chi tiết này cũng rất hữu ích khi bạn muốn thao tác với tệp bạn đang mở.

Ví dụ: “mode” là một trong số ít các thuộc tính mà mọi đối tượng tệp đều liên kết với nó. Nó mô tả chế độ mà tệp đã mở.

Tương tự, thuộc tính “name” của đối tượng tệp hiển thị tên của tệp đã mở.

Bạn phải nhớ rằng mặc dù có liên quan cơ bản với nhau nhưng tệp và đối tượng tệp là những thứ riêng biệt.

Tệp là gì?

Khi bạn sử dụng hệ điều hành như Windows, “tệp” có nghĩa là hình ảnh, tài liệu, video, đoạn âm thanh, tệp thực thi và những thứ tương tự. Ở cấp độ kỹ thuật, các tệp chỉ đơn giản là các vị trí được đặt tên trên ổ đĩa với dữ liệu liên quan được lưu trữ trong đó.

Ổ đĩa được sử dụng để lưu trữ dữ liệu vĩnh viễn vì RAM dễ bay hơi và mất dữ liệu khi máy tính tắt.

Trong hệ điều hành, bạn có thể thao tác với các tệp này và sắp xếp chúng trong các thư mục tạo thành các thư mục phức tạp. Về cơ bản, tệp trong Windows là bất kỳ mục nào mà bạn có thể tạo, thao tác và xóa.

Tuy nhiên, Python xử lý tệp khác với Windows hoặc bất kỳ hệ điều hành nào khác.

Các loại tệp trong Python

Python phân loại tệp thành một trong hai loại: văn bản hoặc nhị phân. Hiểu được sự tương phản giữa chúng là rất quan trọng trước khi bạn học cách làm việc với các tệp Python.

Tệp văn bản là tệp có chuỗi dữ liệu, với dữ liệu là các ký tự chữ và số. Trong các tệp này, mọi dòng thông tin được kết thúc bằng các ký tự đặc biệt được gọi là ký tự EOL hoặc End Of Line.

Có nhiều ký tự EOL khác nhau mà tệp văn bản có thể sử dụng. Tuy nhiên, ký tự dòng mới (“\ n”) là ký tự EOL mặc định của Python và do đó, ký tự thường được sử dụng nhất.

Dấu gạch chéo ngược trong ký tự dòng mới cho biết trình thông dịch Python rằng dòng hiện tại đã kết thúc. Chữ “n” sau dấu gạch chéo ngược chỉ ra với trình thông dịch rằng dữ liệu theo sau phải được coi là một dòng mới.

Tệp nhị phân hoàn toàn khác với tệp văn bản. Như tên cho biết, các tệp nhị phân chứa dữ liệu nhị phân – 0 và 1 – và chỉ có thể được xử lý bởi một ứng dụng hiểu được nhị phân.

Những tệp này không sử dụng ký tự EOL hoặc bất kỳ ký tự kết thúc nào. Dữ liệu được lưu trữ sau khi nó được chuyển đổi thành hệ nhị phân.

Lưu ý: Chuỗi Python khác với tệp, nhưng học cách làm việc với chuỗi có thể giúp hiểu rõ hơn về cách hoạt động của tệp Python. Để tìm hiểu thêm về cách làm việc với chuỗi trong Python, hãy xem hướng dẫn toàn diện về chuỗi của chúng tôi.

Mở tệp văn bản

Trước khi bạn có thể ghi hoặc đọc từ một tệp, bạn phải mở tệp trước. Để làm điều này, bạn có thể sử dụng hàm open () được tích hợp trong Python.

Hàm nhận hai đối số hoặc tham số: một hàm chấp nhận tên tệp và một hàm khác lưu chế độ truy cập. Nó trả về một đối tượng tệp và có cú pháp sau:

  file_object = open ("File_Name", "Access_Mode")  

Bạn phải lưu ý rằng tệp bạn đang mở phải nằm trong cùng thư mục / thư mục với tập lệnh Python. Nếu tệp không nằm trong cùng một thư mục, bạn phải đề cập đến đường dẫn đầy đủ của tệp khi viết tham số tên tệp.

Ví dụ: để mở tệp “example.txt” nằm trong cùng thư mục với tập lệnh, bạn sẽ viết dòng mã sau:

 f = open ("example.txt")  

Mặt khác, để mở tệp “example.txt” trên Máy tính để bàn, bạn phải viết mã sau:

  f = open ("C: \ Users \ Krish \ Desktop \ example.txt")  

Chế độ truy cập

Python có một số chế độ truy cập và các chế độ này chi phối các hoạt động mà bạn có thể thực hiện trên một tệp đang mở. Nói cách khác, mọi chế độ truy cập đề cập đến cách tệp có thể được sử dụng khi tệp được mở theo cách khác nhau.

Các chế độ truy cập trong Python cũng chỉ định vị trí của xử lý tệp. Bạn có thể coi xử lý tệp như một con trỏ chỉ ra nơi dữ liệu phải được đọc hoặc ghi.

Điều đó cho thấy, việc sử dụng tham số chế độ truy cập là tùy chọn, như đã thấy trong các ví dụ trước.

Có sáu chế độ truy cập trong Python:

  1. Chỉ đọc (‘r’):

    Đây là chế độ truy cập mặc định. Nó mở tệp văn bản để đọc và định vị phần xử lý tệp ở đầu tệp. Nếu Python thấy rằng tệp không tồn tại, nó sẽ tạo ra lỗi I / O và không tạo tệp có tên được chỉ định.

  2. Chỉ ghi (‘w’):

    Nó được sử dụng để ghi tệp. Nếu tệp không có trong thư mục, một tệp có tên được chỉ định sẽ được tạo. Nếu tệp tồn tại, dữ liệu sẽ bị cắt bớt và sau đó bị ghi đè. Tay cầm tệp được đặt ở đầu tệp.

  3. Đọc và ghi (‘r +’):

    Bạn có thể vừa đọc và ghi trên các tệp được mở bằng chế độ truy cập này. Nó đặt chốt ở đầu tệp. Nếu tệp không có trong thư mục, nó sẽ gây ra lỗi I / O.

  4. Viết và đọc (‘w +’):

    Giống như chế độ trước, bạn có thể vừa đọc và ghi trên các tệp được mở bằng chế độ truy cập này. Nó đặt chốt ở đầu tệp. Nếu tệp không có trong thư mục, nó sẽ tạo một tệp mới. Hơn nữa, nếu tệp được chỉ định tồn tại, dữ liệu trong đó sẽ bị cắt bớt và ghi quá nhiều.

  5. Chỉ nối (‘a’):

    Chế độ này mở tệp lên để ghi. Nếu tệp cụ thể không có trong thư mục, một tệp mới có cùng tên sẽ được tạo. Tuy nhiên, không giống như các chế độ khác, tay cầm nằm ở cuối tệp. Do đó, dữ liệu đã nhập sẽ được thêm vào sau tất cả dữ liệu hiện có.

  6. Nối và đọc (‘a +’):

    Nó được sử dụng để đọc và ghi các tệp bằng Python. Nó hoạt động tương tự như chế độ trước đó. Nếu tệp không có sẵn trong thư mục, một tệp có cùng tên sẽ được tạo. Ngoài ra, nếu tệp có sẵn, dữ liệu đã nhập sẽ được thêm vào sau dữ liệu hiện có.

Dấu “+” trong các thông số chế độ truy cập về cơ bản chỉ ra rằng tệp đang được mở để cập nhật.

Có hai tham số khác mà bạn có thể sử dụng để chỉ định chế độ bạn muốn mở tệp.

Python đọc tệp ở chế độ văn bản theo mặc định, được chỉ định bằng tham số “t.” Hàm open () trả về các chuỗi khi đọc tệp. Ngược lại, sử dụng chế độ nhị phân (“b”) khi sử dụng hàm open () trả về byte. Chế độ nhị phân thường được sử dụng khi xử lý các tệp không phải văn bản như hình ảnh và tệp thực thi.

Dưới đây là một số ví dụ về việc sử dụng các chế độ truy cập này trong Python:

  f = open ("example.txt") # Sử dụng chế độ truy cập mặc định 'r'
f = open ("example.txt", 'w') # Mở tệp để ghi ở chế độ văn bản
f = open ("img.bmp", 'r + b') # Mở tệp để đọc và ghi ở chế độ nhị phân
 

Tuyên bố Với

Bên cạnh việc có cú pháp rõ ràng hơn, câu lệnh “with” cũng giúp xử lý ngoại lệ dễ dàng hơn khi làm việc với các đối tượng tệp. Phương pháp hay nhất được coi là sử dụng câu lệnh with khi làm việc với các tệp bất cứ khi nào có thể.

Một lợi thế đáng kể mà việc sử dụng câu lệnh with cung cấp là nó tự động đóng bất kỳ tệp nào bạn đã mở sau khi thao tác hoàn tất. Do đó, bạn không phải lo lắng về việc đóng tệp và dọn dẹp sau khi thực hiện bất kỳ thao tác nào trên tệp.

Cú pháp của câu lệnh with là:

  với mở ("File_Name") dưới dạng tệp:  

Để đọc tệp bằng câu lệnh with, bạn sẽ viết các dòng mã sau:

  với open ("example.txt") là f:
data = f.readlines ()  

Khi dòng mã thứ hai chạy, tất cả dữ liệu được lưu trữ trong “example.txt” sẽ được lưu trữ trong một chuỗi được gọi là “dữ liệu”.

Nếu bạn muốn ghi dữ liệu vào cùng một tệp, bạn sẽ chạy đoạn mã sau:

  với open ("example.txt", "w") là f:
f.write ("Xin chào Thế giới")  

Đọc Nội dung

Đọc một tệp bằng Python rất đơn giản – bạn phải sử dụng tham số ‘r’ hoặc không đề cập đến một tham số nào vì nó là chế độ truy cập mặc định.

Điều đó nói rằng, có nhiều cách khác để đọc dữ liệu từ một tệp bằng Python. Ví dụ: bạn có thể sử dụng phương thức read (size) được tích hợp trong Python để đọc kích thước dữ liệu được chỉ định. Nếu bạn không chỉ định tham số kích thước, phương thức sẽ đọc tệp cho đến khi kết thúc.

Giả sử rằng “example.txt” có văn bản sau:
Xin chào mọi người.
Tệp này có hai dòng.

Để đọc tệp bằng phương thức read (), bạn sẽ sử dụng mã sau:

  f = open ("example.txt", 'r', encoding = 'utf-8')

f.read (5) # đọc năm ký tự đầu tiên của dữ liệu 'Xin chào'

f.read (7) # đọc bảy ký tự tiếp theo trong tệp 'world.'

f.read () # đọc phần còn lại cho đến khi EOF '\ nTệp này có hai dòng.'

f.read () # trả về chuỗi trống  

Trong ví dụ trên, phương thức read () trả về ký tự dòng mới khi dòng kết thúc. Hơn nữa, khi đến cuối tệp, nó sẽ trả về một chuỗi trống.

Có thể thay đổi vị trí con trỏ bất kể bạn đang sử dụng chế độ truy cập nào với sự trợ giúp của phương thức seek (). Để kiểm tra vị trí hiện tại của con trỏ, bạn có thể sử dụng hàm tell ().

Bạn cũng có thể đọc từng dòng tệp bằng vòng lặp for, như sau:

 
cho dòng trong f:
print (line, end = '')
...
Chào thế giới.
Tệp này có hai dòng.
 

Phương thức readline () và readlines () là hai kỹ thuật đáng tin cậy khác để đọc dữ liệu từ tệp. Phương thức readline () dừng đọc dòng sau khi đọc một ký tự dòng mới.

  f.readline () # đọc dòng đầu tiên 'Hello world.'  

Mặt khác, readlines () đọc tệp cho đến khi đạt đến EOF.

  f.readlines () # đọc dòng đầu tiên 'Hello world.'  


Thêm văn bản mới

Để ghi vào tệp Python, bạn phải mở tệp đó ở chế độ write (w), append (a) hoặc chế độ tạo độc quyền (x).

Bạn phải cẩn thận khi sử dụng chế độ ghi vì chế độ này sẽ ghi đè lên dữ liệu trong tệp nếu nó đã tồn tại.

Để ghi vào tệp bất kể đó là tệp văn bản hay tệp nhị phân, bạn có thể sử dụng phương thức write () của Python.

  với open ("example.txt", 'w', encoding = 'utf-8') là f:
f.write ("Xin chào mọi người. \ n \ n")
f.write ("Tệp này có hai dòng.")  

Nếu “example.txt” không tồn tại trong thư mục, nó sẽ được tạo với văn bản được chỉ định được ghi vào đó. Mặt khác, nếu tệp tồn tại trong cùng thư mục với tập lệnh, thì dữ liệu mà tệp nắm giữ trước đó sẽ bị xóa và bị ghi đè bằng văn bản mới.

Đóng tệp

Bạn phải đóng tệp sau khi đọc hoặc ghi vào tệp. Đó là cách duy nhất để giải phóng tài nguyên mà tệp đã chiếm dụng.

Đóng một tệp bằng Python rất dễ dàng – tất cả những gì bạn phải làm là sử dụng phương thức close (). Chạy phương thức này sẽ giải phóng bộ nhớ mà tệp đã chiếm dụng. Cú pháp là:

  File_object.close ()  

Để đóng “example.txt” sau khi đọc và viết, bạn chỉ cần chạy mã sau để đóng tệp đó:

  f.close ()  

Phương thức close () đôi khi có thể tạo ra một ngoại lệ, dẫn đến việc thoát mã mà không đóng tệp.

Cách tốt hơn để đóng tệp sau các thao tác là sử dụng khối try… last.

 hãy thử:
   f = open ("example.txt", encoding = 'utf-8')
   # thực hiện các hoạt động
cuối cùng:
   f.close () 

Sử dụng khối try… last đảm bảo rằng các tệp đang mở được đóng đúng cách bất kể có ngoại lệ hay không.

Kết luận

Học cách xử lý tệp và học cách sao chép / di chuyển tệp và thư mục sẽ giúp bạn thành thạo khi làm việc với tệp bằng Python.

Tiếp theo, hãy xem hướng dẫn dễ dàng của chúng tôi về sao chép / di chuyển tệp bằng thanh tiến trình bằng Python.


Xem thêm những thông tin liên quan đến chủ đề cách mở tệp python

Hướng dẫn đọc và ghi tệp trong Python từ A-Z

  • Tác giả: Gà Python
  • Ngày đăng: 2021-11-28
  • Đánh giá: 4 ⭐ ( 1970 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn đọc và ghi tệp trong Python từ A-Z

Input và Đọc ghi file trong Python

  • Tác giả: toidicode.com
  • Đánh giá: 5 ⭐ ( 8128 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ở các bài trước chúng ta đã được tìm hiểu về các kiểu dữ liệu, toán tử cũng như cách khai báo hàm,… trong Python rồi, nhưng ở các bài đó chủ yếu vẫn là làm việc với hệ thống, dữ liệu có sẵn. Mà chúng ta chưa biết cách nhận dữ liệu mà người dùng nhập vào trên comandline, và bài hôm nay chúng ta sẽ tìm hiều về nó.

Đọc ghi file trong Python

  • Tác giả: nguyenvanhieu.vn
  • Đánh giá: 3 ⭐ ( 4796 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Đọc ghi file trong Python hoặc trong bất kỳ ngôn ngữ nào khác là một thao tác thường xuyên được sử dụng trong quá trình làm việc. Bài viết này sẽ hướng dẫn

Tìm hiểu và làm việc với File trong Python

  • Tác giả: t3h.edu.vn
  • Đánh giá: 4 ⭐ ( 1819 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài viết này, bạn sẽ tìm hiểu nơi có thể lưu trữ, truy xuất cũng như thao tác với các file như cách đọc file, ghi file, … trong Python.

Đọc file trong python

  • Tác giả: laptrinhcanban.com
  • Đánh giá: 5 ⭐ ( 3089 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn cách xử lý file trong Python. Bạn sẽ biết cách đọc file trong python bằng mode r trong python, với các phương pháp như đọc toàn bộ file trong python hoặc đọc từng dòng file txt trong Python

Cách chạy chương trình Python

  • Tác giả: howkteam.vn
  • Đánh giá: 5 ⭐ ( 5917 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong các bài trước chúng ta đã cùng nhau tìm hiểu Tổng quan về Python cũng như Môi trường phát triển của nó.
    Ở bài này, Kteam sẽ hướng dẫn các bạn CÁCH CHẠY MỘT CHƯƠNG TRÌNH PYTHON cơ bản nhé!

Thao tác với file (Mở file, Đọc file, Ghi file, Xóa file) trong Python

  • Tác giả: niithanoi.edu.vn
  • Đánh giá: 4 ⭐ ( 9847 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong quá trình lập trình, chúng ta sẽ thao tác với file rất nhiều. Bài này mình sẽ hướng dẫn các bạn cách thao tác Mở file, Đọc file, Ghi file, Xóa file trong Python.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Cách chọn bản ghi Top 1 từ Oracle bằng cách sử dụng PL - chọn bản ghi đầu tiên oracle

By ads_php