Hướng dẫn how does python handle io errors? - python xử lý lỗi io như thế nào?

Hướng dẫn how does python handle io errors? - python xử lý lỗi io như thế nào?

Giới thiệu về Python Ioerror

Khi làm việc với các hoạt động đầu vào và đầu ra trong Python, nếu chúng ta gặp phải lỗi liên quan đến tệp, mã sẽ ném ioerror. Khi chúng tôi cố gắng mở một tệp và nếu nó không tồn tại, ioerror sẽ gặp phải. Trong trường hợp câu lệnh hoặc dòng mã là chính xác, nó có thể dẫn đến lỗi trong khi thực thi. Bây giờ lỗi như thế này, được phát hiện trong quá trình thực hiện chương trình được gọi là ngoại lệ. Thông thường, ioError được nâng lên khi hoạt động đầu ra đầu vào như tệp Open () hoặc phương thức hoặc câu lệnh in đơn giản bị lỗi do các lý do IO như Full Disk Full hoặc tệp không tìm thấy tệp. Lớp ioerror được thừa hưởng từ môi trường HERROR.

Syntax:

Cú pháp được đề cập dưới đây là một định dạng tiêu chuẩn sử dụng sự xuất hiện của lỗi sẽ được in.

IOError: [Errno 1] No such file or directory: 'somefile.txt'

Bắt đầu với tên lỗi, ioError, theo sau là số lỗi đã xảy ra trong một chương trình duy nhất bằng cách sử dụng từ khóa ERRNO. Thông báo giải thích lý do cho lỗi, phổ biến không có tệp hoặc thư mục như vậy, có nghĩa là tên tệp chúng tôi đã truyền, không có sẵn tại địa điểm đề cập hoặc vị trí không chính xác. Cuối cùng, là tên của tệp mà chúng tôi đã vượt qua. Điều này giúp chúng tôi hiểu tệp nào cần tìm hoặc thay đổi tên cho. Cú pháp nhằm giúp các lập trình viên giải quyết lỗi và tiến về phía trước.

Làm thế nào ioerror làm việc trong Python?

  • Trong một chương trình Python, nơi chúng tôi có một hoạt động đơn giản là in nội dung của một tệp, chúng tôi vượt qua tên tệp và đường dẫn của vị trí tệp.
  • Nhưng nếu tập tin mà chúng tôi đã vượt qua, không tồn tại ở vị trí được thông qua hoặc tên tệp đã được thay đổi, thì hoạt động chúng tôi dự định thực hiện won đã xảy ra.
  • Sẽ dẫn đến một lỗi liên quan đến đầu vào đầu vào, đó là ioerror.
  • Vì vậy, về cơ bản, ioError là một lỗi loại ngoại lệ xảy ra khi tệp mà chúng tôi truyền dưới dạng đối số, không tồn tại hoặc dưới dạng tên khác hoặc đường dẫn vị trí tệp không chính xác.
  • Bất kỳ lý do nào có thể nâng cao ioerror.
  • Có nhiều lỗi khác có thể gặp phải và dựa trên yêu cầu của mã chúng tôi đã xử lý các lỗi này.

Ví dụ về Python ioerror

Đưa ra dưới đây là các ví dụ được đề cập:

Ví dụ 1

Thực hiện cơ bản của mã, trong đó mã sẽ ném ioerror. Chương trình đầu tiên của chúng tôi sẽ có một vài hoạt động tệp, sẽ thất bại và chương trình sẽ in lỗi.

Code:

import sys
file = open('myfile.txt')
lines = file.readline()
slines = int(lines.strip())

Explanation:

  • Để giải thích mã trên, chúng tôi có các tệp nhập của chúng tôi. Sau đó, chúng tôi có ba hoạt động qua một tập tin. Đầu tiên, chúng tôi dự định sẽ vượt qua các chi tiết tệp và truy cập nó. Sau đó, chúng tôi có phương thức Readline của chúng tôi sẽ đọc nội dung của tệp và sau đó là dải của chúng tôi, sẽ xóa các ký tự khi bắt đầu và kết thúc các câu.
  • Chúng tôi không in bất kỳ đầu ra nào ở đây, bởi vì chúng tôi muốn thấy hoạt động của việc tăng lỗi. Vì vậy, khi mã trên được thực thi đúng, đầu ra sẽ là một lỗi, ioError là cụ thể.

Output:

Hướng dẫn how does python handle io errors? - python xử lý lỗi io như thế nào?

Như bạn có thể thấy, đầu ra là như mong đợi. Chỉ ra lỗi, trên dòng đó xảy ra và toàn bộ dòng mã được in. Ở đây, chúng tôi chưa sử dụng bất kỳ phương pháp nào để bắt những lỗi này.

Ví dụ #2

Ở đây chúng tôi sẽ chứng minh làm thế nào chúng tôi có thể bắt được Ioerror Python hoặc bất kỳ lỗi nào khác bằng cách sử dụng Try ngoại trừ Block. Mã cho chương trình có thử ngoại trừ khối như sau.

Code:

import sys
def something():
  try:
     file = open ( "filethatdoesnotexist.txt", 'r' )
   except IOError, e:
     print e
print sys.exc_type
something()

Explanation:

  • Chương trình của chúng tôi bắt đầu với việc nhập các tệp hệ thống, vì chúng tôi sẽ làm việc trên các hoạt động đầu ra đầu vào. Sau đó, chúng tôi có hàm đầu tiên được xác định với tên của một cái gì đó ().
  • Chức năng bên trong, chúng tôi bắt đầu từ khóa thử, có nghĩa là mọi thứ từ thời điểm này sẽ được tìm kiếm một lỗi. Trong thử, chúng tôi có hoạt động tệp đầu tiên của chúng tôi, đó là mở một tệp.
  • Mong đợi của chúng tôi giống như: không có tệp hoặc thư mục như vậy: ‘filethatdoesnotexist.txt.

Output:

Hướng dẫn how does python handle io errors? - python xử lý lỗi io như thế nào?

Và như bạn có thể thấy, chương trình của chúng tôi đã ném một ngoại lệ cho biết tệp được truyền trong chương trình không tồn tại.

Làm thế nào để tránh ioerror trong Python?

  • Trong bất kỳ ngôn ngữ lập trình hoặc kịch bản nào, hoàn toàn có thể viết chương trình theo cách mà nó có thể bắt được các lỗi mong đợi.
  • Hiểu mã trước khi thực hiện và bao gồm mệnh đề ngoại lệ bắt cần thiết sẽ giúp tránh ngoại lệ.
  • Một trong những cách cơ bản và đơn giản nhất để làm việc với các trường hợp ngoại lệ trong Python là thực hiện điều khoản bắt tất cả ngoại trừ.
  • Các từ khóa như thử và ngoại trừ giữ giá trị thực ở đây và được sử dụng để bắt bất kỳ loại ngoại lệ nào.
  • Cũng nên không sử dụng nhiều lần thử ngoại trừ các khối trong một chương trình.
  • Lỗi bị bắt trong phần thử trong khi nó được xử lý ngoại trừ phần.
  • Ngoài ra, chúng ta có thể sử dụng cuối cùng, cùng với thử ngoại trừ.
  • Việc sử dụng chính của cuối cùng ở đây sẽ là thực thi mã cho dù lỗi nào bị bắt hoặc xử lý.

Sự kết luận

Ioerror trong Python là kết quả của tên hoặc vị trí tệp không chính xác. Lỗi này được nêu trong nhiều điều kiện và tất cả các điều kiện này có thể được xử lý bằng cách sử dụng Try ngoại trừ Khối mã. Chúng tôi đã thấy hoạt động của lỗi với các ví dụ và thấy cách tránh nó. Thực hiện thử ngoại trừ khối sẽ tiết kiệm rất nhiều công việc khó khăn.

Bài viết đề xuất

Đây là một hướng dẫn cho Python Ioerror. Ở đây chúng tôi thảo luận về phần giới thiệu về ioerror trong Python, nó hoạt động như thế nào với mã mẫu. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm -

  1. Đồng thời Python
  2. Kiểm soát các tuyên bố trong Python
  3. Python Argparse
  4. Chức năng quá tải trong Python

Làm thế nào để Python xử lý ngoại lệ IO?

Trong Python, các trường hợp ngoại lệ có thể được xử lý bằng cách sử dụng câu lệnh thử. Hoạt động quan trọng có thể tăng một ngoại lệ được đặt bên trong mệnh đề thử. Mã xử lý các ngoại lệ được viết trong mệnh đề ngoại trừ. Do đó, chúng tôi có thể chọn những hoạt động để thực hiện một khi chúng tôi đã bắt được ngoại lệ.using a try statement. The critical operation which can raise an exception is placed inside the try clause. The code that handles the exceptions is written in the except clause. We can thus choose what operations to perform once we have caught the exception.

Làm thế nào để Python xử lý lỗi đầu ra đầu vào?

Sự kết luận.Ioerror trong Python là kết quả của tên hoặc vị trí tệp không chính xác.Lỗi này được nêu trong nhiều điều kiện và tất cả các điều kiện này có thể được xử lý bằng cách sử dụng Try ngoại trừ Khối mã.try except code block.

Làm thế nào các lỗi tính toán được xử lý trong Python?

Lỗi không thể được xử lý, trong khi các ngoại lệ Python có thể được xử lý tại thời điểm chạy.Một lỗi có thể là lỗi cú pháp (phân tích cú pháp), trong khi có thể có nhiều loại ngoại lệ có thể xảy ra trong quá trình thực hiện và không thể hoạt động được vô điều kiện., while Python exceptions can be handled at the run time. An error can be a syntax (parsing) error, while there can be many types of exceptions that could occur during the execution and are not unconditionally inoperable.

Nguyên nhân gây ra lỗi IO Python?

Ioerror trong Python là gì?IoError có nghĩa là lỗi đầu vào/đầu ra.Nó xảy ra khi một tệp, đường dẫn tệp hoặc hoạt động HĐH mà chúng tôi tham khảo không tồn tại.Ví dụ: nếu bạn đang chạy một thao tác thời gian chạy trên một tệp hiện có và tệp bị thiếu từ vị trí, Python sẽ ném ioerror.when a file, file path, or OS operation we're referencing does not exist. For example, if you are running a runtime operation on an existing file, and the file goes missing from the location, Python will throw an IOError.