Computer >> Máy Tính >  >> Lập trình >> Python

Viết tệp trong nền bằng Python

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về đa luồng trong Python. Nó giúp chúng tôi thực hiện nhiều nhiệm vụ cùng một lúc. Python có một mô-đun được gọi là phân luồng cho đa nhiệm.

Chúng tôi thấy nó hoạt động như thế nào bằng cách ghi dữ liệu vào một tệp ở chế độ nền trong khi tính tổng các phần tử trong một danh sách. Hãy xem các bước liên quan đến chương trình.

  • Nhập mô-đun phân luồng.

  • Tạo một lớp bằng cách kế thừa luồng.Thread lớp học.

  • Viết mã tệp bên trong phương thức chạy trong lớp trên.

  • Khởi tạo dữ liệu cần thiết.

  • Viết mã để tính tổng các số trong danh sách.

Ví dụ

# importing the modules
import threading
# creating a class by inhering the threading.Thread base class
class MultiTask(threading.Thread):
   def __init__(self, message, filename):
      # invoking the Base class
      threading.Thread.__init__(self)
      # initializing the variables to class
      self.message = message
      self.filename = filename
   # run method that invokes in background
   def run(self):
      # opening the file in write mode
      with open(filename, 'w+') as file:
         file.write(message)
      print("Finished writing to a file in background")
# initial code
if __name__ == '__main__':
   # initializing the variables
   message = "We're from Tutorialspoint"
   filename = "tutorialspoint.txt"
   # instantiation of the above class for background writing
   file_write = MultiTask(message, filename)
   # starting the task in background
   file_write.start()
   # another task
   print("It will run parallelly to the above task")
   nums = [1, 2, 3, 4, 5]
   print(f"Sum of numbers 1-5: {sum(nums)}")
   # completing the background task
   file_write.join()

Nó sẽ chạy song song với tác vụ trên

Tổng các số 1-5:15

Đã ghi xong vào một tệp ở chế độ nền

Đầu ra

Bạn có thể kiểm tra thư mục cho tệp. Nếu bạn chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

It will run parallelly to the above task
Sum of numbers 1-5: 15
Finished writing to a file in background

Kết luận

Nếu bạn có bất kỳ câu hỏi nào từ hướng dẫn, hãy đề cập đến chúng trong phần bình luận.