ทุกสิ่งที่คุณต้องการทราบเกี่ยวกับข้อยกเว้นการพิมพ์ใน Python



บทความนี้แนะนำให้คุณเข้าสู่หัวข้อที่น่าสนใจอีกหัวข้อหนึ่งซึ่งเรียกว่า Print Exception In Python พร้อมการสาธิตที่ใช้ได้จริง

ในยุคปัจจุบันไม่ว่าคุณจะอยู่ในอุตสาหกรรมการเข้ารหัสหรือไม่ก็ตามคุณอาจเคยได้ยินเกี่ยวกับ อย่างน้อยหนึ่งครั้ง นับตั้งแต่ก่อตั้งขึ้นในปี 1991 ภาษาโปรแกรมนี้ได้รวบรวมชื่อเสียงและความกล้าหาญจำนวนมากด้วยคุณสมบัติที่หลากหลายและความเก่งกาจ แต่ถึงกระนั้นก็มีบางแง่มุมของภาษาโปรแกรมนี้ที่ยังคงสร้างความสับสนให้กับทั้งมืออาชีพและนักเขียนโปรแกรมมือสมัครเล่น ลักษณะหนึ่งคือข้อยกเว้นการพิมพ์ ดังนั้นในบทความนี้เราจะสำรวจ Print Exception ใน Python และเจาะลึกลงไปในแกนกลาง

คำแนะนำต่อไปนี้จะกล่าวถึงในบทความนี้





มาเริ่มกันเลย

พิมพ์ข้อยกเว้นใน Python

ข้อผิดพลาดใน Python

ในระบบปฏิบัติการ Python มีข้อผิดพลาดหลักสองประเภท ข้อแรกเป็นข้อผิดพลาดทางไวยากรณ์และข้อที่สองเป็นข้อผิดพลาดข้อยกเว้น ไม่ว่าคุณจะเผชิญกับข้อผิดพลาดประเภทใดใน Python เมื่อปรากฏขึ้นล่ามทั้งหมดจะหยุดทำงานกลางคันซึ่งจะรบกวนเวิร์กโฟลว์ของคุณ ในบทความนี้เราจะเน้นไปที่ข้อยกเว้นใน Python และวิธีที่คุณสามารถหลีกเลี่ยงได้



ไปต่อกับบทความนี้เกี่ยวกับข้อยกเว้นการพิมพ์ใน Python

ข้อผิดพลาดทางไวยากรณ์เทียบกับข้อยกเว้นใน Python

ข้อผิดพลาดทางไวยากรณ์ใน Python เกิดขึ้นเมื่อล่ามตรวจพบคำสั่งที่ไม่ถูกต้องในบรรทัดรหัสของคุณ เพื่อให้เข้าใจสิ่งนี้ได้ดีขึ้นลองดูตัวอย่างด้านล่าง



>>> พิมพ์ (0/0)) ไฟล์ '', บรรทัดที่ 1 พิมพ์ (0/0)) ^ SyntaxError: ไวยากรณ์ไม่ถูกต้อง

เคอร์เซอร์ในตัวอย่างด้านบนระบุว่าข้อผิดพลาดทางไวยากรณ์อยู่ตรงไหนในโค้ดของคุณ ในตัวอย่างข้างต้นเราใช้วงเล็บมากเกินไปจึงทำให้เกิดข้อผิดพลาดทางไวยากรณ์ ดูตัวอย่างที่ถูกต้องด้านล่าง

เนมสเปซหมายถึงอะไรใน c ++
>>> พิมพ์ (0/0) Traceback (โทรล่าสุดล่าสุด): ไฟล์ '' บรรทัดที่ 1 ใน

ZeroDivisionError: การหารจำนวนเต็มหรือโมดูโลด้วยศูนย์

หากคุณสังเกตตัวอย่างข้างต้นคุณจะรู้ได้อย่างรวดเร็วว่าแม้ว่าจะไม่มีข้อผิดพลาดทางไวยากรณ์ที่นี่ แต่ล่ามพบข้อผิดพลาดข้อยกเว้น สิ่งนี้หมายความว่าโดยทั่วไปคือการรันโค้ดของคุณล่ามได้สร้างข้อผิดพลาดซึ่งเรียกอีกอย่างว่าข้อผิดพลาดข้อยกเว้น

สิ่งที่สังเกตได้อีกประการหนึ่งในตัวอย่างข้างต้นคือบรรทัดสุดท้ายของรหัสระบุประเภทของข้อผิดพลาดข้อยกเว้นที่มีอยู่ในบรรทัดของโค้ดนี้

นี่เป็นหนึ่งในแง่มุมที่น่าสนใจที่สุดเมื่อพูดถึง Python แทนที่จะบอกคุณว่ามีข้อผิดพลาดในโค้ดของคุณล่ามจะดำเนินการเหนือกว่าเพื่อสร้างข้อยกเว้นและบอกคุณว่าข้อผิดพลาดคืออะไร ในบางกรณีหากข้อผิดพลาดเป็นข้อผิดพลาดใหม่สำหรับล่ามจะสร้างข้อยกเว้นใหม่เพื่อกำหนดให้คุณสะดวก

ไปต่อกับบทความนี้เกี่ยวกับข้อยกเว้นการพิมพ์ใน Python

ตัวอย่าง java การเรียกใช้เมธอดระยะไกล

การเพิ่มข้อยกเว้น

ในบางกรณีคุณอาจต้องเพิ่มข้อยกเว้นด้วยตนเองเพื่อช่วยในการตรวจสอบวัตถุประสงค์ ในการดำเนินการนี้ให้คุณใช้ฟังก์ชันเพิ่ม ข้อดีอย่างหนึ่งของการใช้ฟังก์ชันเพิ่มคือสามารถเสริมด้วยข้อยกเว้นที่กำหนดเองควบคู่ไปด้วย หากอยู่ในสถานการณ์หนึ่งคุณต้องการรวมเงื่อนไขบางอย่างพร้อมกับฟังก์ชันเพิ่มให้ทำตามตัวอย่างที่แบ่งปันด้านล่าง

x = 10

ถ้า x> 5:

เพิ่มข้อยกเว้น ('x ไม่ควรเกิน 5 ค่าของ x คือ: {}' รูปแบบ (x))

เมื่อรันโค้ดนี้ผลลัพธ์จะมีลักษณะดังนี้

Traceback (โทรล่าสุดล่าสุด):

ไฟล์“” บรรทัด 4 นิ้ว

ข้อยกเว้น: x ไม่ควรเกิน 5 ค่าของ x คือ: 10

การตั้งค่าเส้นทางคลาสใน java

โปรแกรมหยุดชะงักระหว่างเมื่อตรงตามเงื่อนไขและมีข้อยกเว้นปรากฏขึ้นบนหน้าจอ

ไปต่อกับบทความนี้เกี่ยวกับข้อยกเว้นการพิมพ์ใน Python

ประเภทของข้อยกเว้นใน Python

ใน Python มีข้อยกเว้นหลายประเภทสำหรับการใช้งาน สิ่งที่สำคัญที่สุดบางส่วนมีดังที่กล่าวไว้ด้านล่าง

  1. ข้อยกเว้น AssertionError
  2. ข้ออื่น
  3. ลองและยกเว้นบล็อก
  4. ข้อยกเว้นในที่สุด

ข้อยกเว้น AssertionError

ข้อยกเว้น AssertionError เป็นหนึ่งในข้อยกเว้นที่นิยมใช้กันมากที่สุดโดยโปรแกรมเมอร์ทั่วโลก แทนที่จะรอให้โปรแกรมหยุดกลางคันวิธีนี้จะรวมเงื่อนไขไว้ที่จุดเริ่มต้นด้วย หากตรงตามเงื่อนไขโปรแกรมจะยังคงทำงานต่อไปและหากไม่ตรงตามเงื่อนไขโปรแกรมจะหยุดทำงานและข้อยกเว้นจะปรากฏขึ้นบนหน้าจอ เพื่อให้เข้าใจสิ่งนี้ได้ดีขึ้นลองดูตัวอย่างด้านล่าง

import sys assert ('linux' ใน sys.platform), 'โค้ดนี้ทำงานบน Linux เท่านั้น'

ข้ออื่น

ใน Python คุณสามารถใช้ส่วนคำสั่งอื่นเพื่อเรียกใช้โค้ดบางบล็อกเฉพาะในกรณีที่ไม่มีข้อยกเว้นในเนื้อหาของโปรแกรม ลองดูตัวอย่างด้านล่างเพื่อทำความเข้าใจกระบวนการนี้ให้ดีขึ้น

ลอง: linux_interaction () ยกเว้น AssertionError เป็นข้อผิดพลาด: print (error) else: print ('Executing the else clause.')

ไปต่อกับบทความนี้เกี่ยวกับข้อยกเว้นการพิมพ์ใน Python

ลองและยกเว้นบล็อก

จุดประสงค์หลักของการลองและยกเว้นบล็อกใน Python คือการจับและจัดการกับข้อยกเว้น ล่ามทำตามคำสั่ง try และเรียกใช้โปรแกรมตามปกติ ในกรณีที่มีข้อยกเว้นในโปรแกรมคำสั่งหลังจากบล็อก except จะถูกดำเนินการเพื่อจัดการอย่างมีประสิทธิภาพ ลองดูตัวอย่างด้านล่างเพื่อทำความเข้าใจแนวคิดนี้ให้ดีขึ้น

def linux_interaction (): assert ('linux' ใน sys.platform), 'ฟังก์ชันสามารถทำงานบนระบบ Linux เท่านั้น' พิมพ์ ('ทำอะไรบางอย่าง') ลอง: linux_interaction () ยกเว้น: ผ่าน

ข้อยกเว้นในที่สุด

ในบางสถานการณ์คุณจะต้องให้โปรแกรมทำงานไม่ว่าคุณจะพบข้อยกเว้นหรือไม่ก็ตาม ในสถานการณ์เหล่านี้ข้อยกเว้นจะเกิดขึ้นในที่สุด ด้วยการใช้สิ่งนี้คุณสามารถกระตุ้นให้ล่ามเรียกใช้โค้ดของคุณต่อไปไม่ว่าจะตรงตามเงื่อนไขหรือไม่ก็ตาม ลองดูตัวอย่างด้านล่างเพื่อทำความเข้าใจสิ่งนี้ให้ดีขึ้น

ลอง: linux_interaction () ยกเว้น AssertionError เป็น error: print (error) else: try: with open ('file.log') as file: read_data = file.read () ยกเว้น FileNotFoundError เป็น fnf_error: print (fnf_error) ในที่สุด: print ( 'ทำความสะอาดโดยไม่คำนึงถึงข้อยกเว้นใด ๆ ')

เรามาถึงตอนท้ายของบทความนี้เกี่ยวกับ Print Exception In Python

หากต้องการรับความรู้เชิงลึกเกี่ยวกับ Python พร้อมกับแอพพลิเคชั่นต่างๆคุณสามารถทำได้ สำหรับการฝึกอบรมออนไลน์สดพร้อมการสนับสนุนตลอด 24 ชั่วโมงทุกวันและการเข้าถึงตลอดชีวิต มีคำถามสำหรับเรา? พูดถึงพวกเขาในส่วนความคิดเห็นของบทความนี้แล้วเราจะติดต่อกลับไป