HomeLập trìnhPythonXử lý tệp...

Xử lý tệp trong Python – Cách tạo, đọc và ghi vào tệp


Trong hướng dẫn này, bạn sẽ học cách mở tệp, ghi vào tệp và đóng tệp. Bạn cũng sẽ học cách đọc từ tệp bằng Python.

Khi kết thúc hướng dẫn này, bạn sẽ biết những kiến ​​thức cơ bản về cách sử dụng tệp trong Python.

Xử lý tệp trong Python

Xử lý tệp là một hoạt động quan trọng trong mọi ứng dụng web. Các loại hoạt động mà bạn có thể thực hiện trên tệp đã mở được kiểm soát bởi Chế độ truy cập. Những điều này mô tả cách tập tin sẽ được sử dụng sau khi nó được mở.

Các chế độ này cũng xác định vị trí của xử lý tệp phải được đặt trong tệp. Tương tự như một con trỏ, một phần xử lý tệp cho biết nơi dữ liệu sẽ được đọc hoặc đưa vào tệp.

Trong Python, có sáu phương thức hoặc chế độ truy cập, đó là:

  1. Chỉ đọc (‘r’): Chế độ này mở các tệp văn bản chỉ để đọc. Bắt đầu tệp là nơi đặt tay cầm. Nó làm tăng lỗi I/O nếu tệp không tồn tại. Đây cũng là chế độ mặc định để mở tệp.
  2. Đọc và Viết (‘r+’): Phương pháp này mở tệp cho cả đọc và viết. Bắt đầu tệp là nơi đặt tay cầm. Nếu tệp không tồn tại, lỗi I/O sẽ xuất hiện.
  3. Chỉ viết (‘w’): Chế độ này chỉ mở tệp để ghi. Dữ liệu trong các tệp hiện có được sửa đổi và ghi đè. Bắt đầu tệp là nơi đặt tay cầm. Nếu tệp chưa tồn tại trong thư mục, một tệp mới sẽ được tạo.
  4. Viết và Đọc (‘w+’): Chế độ này mở tệp cho cả đọc và ghi. Văn bản được ghi đè và xóa khỏi một tệp hiện có. Bắt đầu tệp là nơi đặt tay cầm.
  5. Chỉ nối thêm (‘a’): Chế độ này cho phép mở tệp để ghi. Nếu tệp chưa tồn tại, một tệp mới sẽ được tạo. Tay cầm được đặt ở cuối tệp. Dữ liệu mới ghi sẽ được thêm vào cuối, sau dữ liệu đã ghi trước đó.
  6. Nối và đọc (‘a+’): Sử dụng phương pháp này, bạn có thể đọc và ghi trong tệp. Nếu tệp chưa tồn tại, một tệp sẽ được tạo. Tay cầm được đặt ở cuối tệp. Văn bản mới viết sẽ được thêm vào cuối, sau dữ liệu đã viết trước đó.
Đọc thêm  Thị giác máy tính nâng cao với Python

Dưới đây là mã cần thiết để tạo, ghi và đọc tệp văn bản bằng cách sử dụng các phương thức xử lý tệp Python hoặc chế độ truy cập.

Cách tạo tệp trong Python

Trong Python, bạn sử dụng open() chức năng với một trong các tùy chọn sau – “x” hoặc “w” – để tạo một tệp mới:

  • “x” – Tạo: lệnh này sẽ tạo một tệp mới khi và chỉ khi không có tệp nào tồn tại với tên đó, nếu không nó sẽ trả về lỗi.

Ví dụ tạo tệp trong Python bằng lệnh “x”:

#creating a text file with the command function "x"

f = open("myfile.txt", "x")

Bây giờ chúng ta đã tạo một tệp văn bản trống mới! Nhưng nếu bạn thử lại mã ở trên – ví dụ: nếu bạn cố gắng tạo một tệp mới có cùng tên như bạn đã sử dụng ở trên (nếu bạn muốn sử dụng lại tên tệp ở trên), bạn sẽ nhận được thông báo lỗi rằng tệp đã tồn tại. Nó sẽ trông giống như hình dưới đây:

M5NFHGEBKdLZL94AVJLeU5IU2t8TfscRrGuerHUOIRUkuf3EuXzqGk2VO0ltu7Y3Fx66M6O1mayhi1ItDEWc57v-2lq0Sn9DM39aKvgHSbv8N3Bu6buYMFFS15ND6K8JbpKXN-L2UzVtRknsuG9ICVY
  • “w” – Viết: lệnh này sẽ tạo một tệp văn bản mới cho dù có tệp trong bộ nhớ với tên được chỉ định mới hay không. Nó không trả về lỗi nếu tìm thấy một tệp hiện có cùng tên – thay vào đó, nó sẽ ghi đè lên tệp hiện có.

Ví dụ về cách tạo tệp bằng lệnh “w”:

#creating a text file with the command function "w"

f = open("myfile.txt", "w")

#This "w" command can also be used create a new file but unlike the the "x" command the "w" command will overwrite any existing file found with the same file name.

Với mã ở trên, cho dù tệp tồn tại hay tệp không tồn tại trong bộ nhớ, bạn vẫn có thể tiếp tục và sử dụng mã đó. Chỉ cần lưu ý rằng nó sẽ ghi đè lên tệp nếu nó tìm thấy một tệp hiện có cùng tên.

Đọc thêm  không có mô-đun nào có tên Lỗi Python [Fixed]

Cách ghi vào tệp bằng Python

Có hai phương pháp ghi vào một tệp trong Python, đó là:

Các write() phương pháp:

Hàm này chèn chuỗi vào tệp văn bản trên một dòng.

Dựa trên tệp chúng tôi đã tạo ở trên, dòng mã bên dưới sẽ chèn chuỗi vào tệp văn bản đã tạo, đó là “myfile.txt.”


file.write("Hello There\n")

Các writelines() phương pháp:

Chức năng này chèn nhiều chuỗi cùng một lúc. Một danh sách các phần tử chuỗi được tạo và sau đó mỗi chuỗi được thêm vào tệp văn bản.

Sử dụng tệp đã tạo trước đó ở trên, dòng mã bên dưới sẽ chèn chuỗi vào tệp văn bản đã tạo, đó là “myfile.txt.”

f.writelines(["Hello World ", "You are welcome to Fcc\n"])

Ví dụ:

#This program shows how to write data in a text file.

file = open("myfile.txt","w")
L = ["This is Lagos \n","This is Python \n","This is Fcc \n"]

# i assigned ["This is Lagos \n","This is Python \n","This is Fcc \n"] to #variable L, you can use any letter or word of your choice.
# Variable are containers in which values can be stored.
# The \n is placed to indicate the end of the line.

file.write("Hello There \n")
file.writelines(L)
file.close()

# Use the close() to change file access modes

Cách đọc từ một tệp văn bản trong Python

Có ba phương pháp đọc dữ liệu từ tệp văn bản trong Python. Họ đang:

Các read() phương pháp:

Hàm này trả về các byte được đọc dưới dạng một chuỗi. Nếu không có n nào được chỉ định, thì nó sẽ đọc toàn bộ tệp.

Ví dụ:

f = open("myfiles.txt", "r")
#('r’) opens the text files for reading only
print(f.read())
#The "f.read" prints out the data in the text file in the shell when run.

Phương thức readline():

Hàm này đọc một dòng từ tệp và trả về dưới dạng một chuỗi. Nó đọc tối đa n byte cho n được chỉ định. Nhưng ngay cả khi n lớn hơn độ dài của dòng, nó cũng không đọc được nhiều hơn một dòng.

f = open("myfiles.txt", "r")
print(f.readline())

Các readlines() phương pháp:

Hàm này đọc tất cả các dòng và trả về chúng dưới dạng các phần tử chuỗi trong danh sách, mỗi phần tử cho một dòng.

Bạn có thể đọc hai dòng đầu tiên bằng cách gọi readline() hai lần, đọc hai dòng đầu tiên của tệp:

f = open("myfiles.txt", "r")
print(f.readline())
print(f.readline())

Cách đóng tệp văn bản bằng Python

Tốt nhất là luôn đóng tệp khi bạn hoàn thành.

Đọc thêm  Python if __name__ == __main__ Được giải thích bằng các ví dụ về mã

Ví dụ đóng tệp văn bản:

Chức năng này đóng tệp văn bản khi bạn sửa đổi xong:

f = open("myfiles.txt", "r")
print(f.readline())
f.close()

Hàm close() ở cuối mã cho Python biết rõ điều đó, tôi đã hoàn thành phần tạo hoặc đọc này – nó giống như nói Kết thúc.

Ví dụ:

Chương trình bên dưới hiển thị thêm các ví dụ về cách đọc và ghi dữ liệu trong tệp văn bản. Mỗi dòng mã có nhận xét để giúp bạn hiểu điều gì đang diễn ra:

# Program to show various ways to read and
# write data in a text file.

file = open("myfile.txt","w")
L = ["This is Lagos \n","This is Python \n","This is Fcc \n"]

#i assigned ["This is Lagos \n","This is Python \n","This is Fcc \n"]
#to variable L
  
#The \n is placed to indicate End of Line

file.write("Hello There \n")
file.writelines(L)
file.close()
# use the close() to change file access modes



file = open("myfile.txt","r+") 
print("Output of the Read function is ")
print(file.read())
print()
  
# The seek(n) takes the file handle to the nth
# byte from the start.
file.seek(0) 
  
print( "The output of the Readline function is ")
print(file.readline()) 
print()
  
file.seek(0)
  
# To show difference between read and readline

print("Output of Read(12) function is ") 
print(file.read(12))
print()

file.seek(0)
  
print("Output of Readline(8) function is ") 
print(file.readline(8))
  
file.seek(0)
# readlines function
print("Output of Readlines function is ") 
print(file.readlines()) 
print()
file.close()

Đây là đầu ra của đoạn mã trên khi chạy trong trình bao. Tôi đã gán “Đây là Lagos”, “Đây là Python” và “Đây là Fcc” cho “L” và sau đó yêu cầu nó in bằng hàm ”file.read”.

Đoạn mã trên cho thấy hàm “readline()” đang trả về chữ cái dựa trên số được chỉ định cho nó, trong khi hàm “readlines()” đang trả về mọi chuỗi được gán cho “L” bao gồm cả \n. Tức là hàm “readlines()” sẽ in ra toàn bộ dữ liệu trong file.

ey-ds4HKbitEqVJyIMSBdiow9cB5vPtQZNg6kojsZ6WLxL3dt4HyrScAfbPvNS-Lp4SKBE4xuoYGJEUelawHBYnDTcev42B0ht6PWQ3Qsio_TPZxOaTvQFRXQmHmrlnEKO6wleoEJShurKIYh2KYUpg

Phần kết luận

Hy vọng rằng sau khi xem qua hướng dẫn này, bạn sẽ hiểu xử lý tệp trong Python là gì. Chúng tôi cũng đã học các chế độ/phương pháp cần thiết để tạo, viết, đọc và đóng() một tệp văn bản bằng cách sử dụng một số ví dụ cơ bản từ Python.

Cảm ơn vì đã đọc!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status