ສາລະບານ[ເຊື່ອງ][ສະແດງ]
ການບັນຍາຍນີ້ຈະມີຄວາມສໍາຄັນຖ້າຫາກວ່າທ່ານກໍາລັງຈັດການກັບໂຄງການຂະຫນາດໃຫຍ່.
ທ່ານຈະໄດ້ຮຽນຮູ້ທີ່ຈະຈັດການຄວາມຜິດພາດຜ່ານທາງຕັນຂໍ້ຍົກເວັ້ນແລະການນໍາໃຊ້ຄໍາເຫັນໃນ Python.
ຂໍ້ຍົກເວັ້ນ
ພວກເຮົາກໍາລັງຈະຮຽນຮູ້ວິທີການຈັດການກັບຄວາມຜິດພາດໃນໂປຼແກຼມ Python. ໃຫ້ເລີ່ມຕົ້ນດ້ວຍການຂຽນໂປຼແກຼມນ້ອຍໆເພື່ອໃຫ້ອາຍຸຂອງຜູ້ໃຊ້ຈາກຈຸດເຊື່ອມຕໍ່.
age = int(input('Age'))
print(age)
ໃຫ້ແລ່ນມັນ.
ດຽວນີ້, ເບິ່ງລະຫັດອອກຂອງໂຄງການນີ້. ອອກຈາກລະຫັດ 0 ຫມາຍຄວາມວ່າໂຄງການຂອງພວກເຮົາຖືກຢຸດເຊົາຢ່າງສໍາເລັດຜົນແລະບໍ່ມີຂໍ້ຜິດພາດໃດໆ. ແຕ່ຈະເປັນແນວໃດຖ້າພວກເຮົາດໍາເນີນການໂຄງການນີ້ອີກເທື່ອຫນຶ່ງແລະແທນທີ່ຈະໃສ່ຄ່າຕົວເລກ, ພວກເຮົາໃສ່ string?
ພວກເຮົາໄດ້ຮັບຄ່າຜິດພາດກັບຂໍ້ຄວາມຂອງລາວ "ຕົວຫນັງສືທີ່ບໍ່ຖືກຕ້ອງສໍາລັບ int() ກັບຖານ 10" ໂດຍພື້ນຖານແລ້ວສິ່ງທີ່ຂໍ້ຄວາມນີ້ບອກພວກເຮົາແມ່ນວ່າສາຍ "qwe" ນີ້ບໍ່ມີຕົວເລກບ້ານທີ່ຖືກຕ້ອງທີ່ສາມາດປ່ຽນເປັນຈໍານວນເຕັມ. ດຽວນີ້, ເບິ່ງລະຫັດອອກຂອງໂຄງການນີ້. ລະຫັດອອກ 1 ຫມາຍຄວາມວ່າລະຫັດອອກຂອງພວກເຮົາ crashed, ດັ່ງນັ້ນ 0 ສະເຫມີຫມາຍຄວາມວ່າຜົນສໍາເລັດແລະສິ່ງໃດແດ່ແຕ່ 0 ຫມາຍຄວາມວ່າ crash. ໃນການຂຽນໂປລແກລມ, ພວກເຮົາອ້າງເຖິງຄວາມຜິດພາດປະເພດນີ້ເປັນຂໍ້ຍົກເວັ້ນ.
ໃນຖານະເປັນນັກຂຽນໂປລແກລມ python ທີ່ດີ, ທ່ານຄວນຄາດຄະເນສະຖານະການນີ້. ທ່ານບໍ່ຕ້ອງການທີ່ຈະປ່ອຍໃຫ້ໂຄງການທັງຫມົດຂອງທ່ານ crash ພຽງແຕ່ເນື່ອງຈາກວ່າຜູ້ໃຊ້ໃສ່ຄ່າທີ່ບໍ່ຖືກຕ້ອງ. ດັ່ງນັ້ນ, ແທນທີ່ຈະປ່ອຍໃຫ້ໂຄງການຂັດຂ້ອງ, ທ່ານຄວນຈັດການສະຖານະການແລະພິມຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດທີ່ເຫມາະສົມ. ນັ້ນແມ່ນສິ່ງທີ່ຂ້ອຍຈະສະແດງເຈົ້າໃນການບັນຍາຍນີ້.
ໃນ Python, ພວກເຮົາມີໂຄງສ້າງທີ່ເອີ້ນວ່າ try except
ໃຊ້ເພື່ອຈັດການກັບສະຖານະການຜິດພາດ.
try:
age = int(input('Age'))
print(age)
ລະຫັດສອງແຖວນີ້ແມ່ນສ່ວນຫນຶ່ງຂອງພວກເຮົາ try:
ຕັນ. ພວກເຮົາຈະເພີ່ມ except
block ຫຼັງຈາກມັນກັບປະເພດຂອງຄວາມຜິດພາດທີ່ພວກເຮົາຄາດວ່າຈະ.
except ValueError:
print('Invalid Value')
ດຽວນີ້ມັນຈະສົ່ງຄືນສະຕຣິງ “ຄ່າບໍ່ຖືກຕ້ອງ” ໃນກໍລະນີທີ່ມີຄ່າຜິດພາດ.
ໃຫ້ກວດເບິ່ງຂໍ້ຜິດພາດປະເພດອື່ນໂດຍການປ່ຽນແປງໂຄງການທີ່ຜ່ານມາ.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ValueError:
print('Invalid Value')
ໃນປັດຈຸບັນ, ຖ້າພວກເຮົາດໍາເນີນການໂຄງການນີ້ແລະໃສ່ '0' ໃນອາຍຸ, ມູນຄ່າຕົວເລກ. ເພາະສະນັ້ນ, ດ້ານວິຊາການ, ພວກເຮົາບໍ່ຄວນໄດ້ຮັບຂໍ້ຍົກເວັ້ນໃດໆ.
ໃຫ້ແລ່ນມັນ.
ລອງເບິ່ງ. ໂປຣແກມຂອງພວກເຮົາຂັດຂ້ອງ ແລະພວກເຮົາເຮັດ "ສູນຄວາມຜິດພາດ" ເພາະວ່າພວກເຮົາບໍ່ສາມາດແບ່ງຕົວເລກດ້ວຍ 0. ອີກເທື່ອໜຶ່ງໃຫ້ເບິ່ງລະຫັດອອກ. ພວກເຮົາບໍ່ສາມາດຈັບຄວາມຜິດພາດປະເພດນີ້ຫຼືການຍົກເວັ້ນປະເພດນີ້ຍົກເວັ້ນການຕັນ.
ນີ້ຍົກເວັ້ນບລັອກແມ່ນພຽງແຕ່ຈັບຂໍ້ຍົກເວັ້ນຂອງຂໍ້ຜິດພາດຂອງຄ່າປະເພດແລະພວກເຮົາຈະຕ້ອງການການຍົກເວັ້ນບລັອກໃຫມ່ເພື່ອຈັດການກັບຂໍ້ຜິດພາດຂອງສູນ. ຂໍໃຫ້ດັດແກ້ໂຄງການຕາມຄວາມເຫມາະສົມ.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ZeroDivisionError:
print('Age cannot be 0')
except ValueError:
print('Invalid Value')
ບັນຫາຖືກແກ້ໄຂ!
- ຄວາມຜິດພາດຂອງ Syntax
- ພິມຜິດ
- ຊື່ຜິດພາດ
- ຕົວຊີ້ວັດ
- ຄວາມຜິດພາດມູນຄ່າ
- Zerodivisionerror
- ຄຸນລັກສະນະຄວາມຜິດພາດ
- Runtime ຜິດພາດ
- ຄີຜິດພາດ
- ຄວາມຈຳ
- ຢືນຢັນຄວາມຜິດພາດ
- Indentationerror
- Eoferror
- ຕົວຊີ້ລອຍ
- Overflowerror
- ເຫດຜົນຜິດພາດ
- ຄວາມຜິດພາດລະບົບ
- ບໍ່ປະຕິບັດຂໍ້ຜິດພາດ
- Oserror
- ຄວາມຜິດພາດ
- ອ້າງອິງ
- Unicodeerror
- ເລກຄະນິດສາດ
- Unicodedecodeerror
- Unicodeencodeerror
- ຕົວແປ Unicode
- ຄວາມຜິດພາດໃນເວລາແລ່ນ
ໃນຖານະນັກຂຽນໂປລແກລມ, ທ່ານຄວນຮູ້ເຖິງຂໍ້ຍົກເວັ້ນທັງຫມົດໃນໂປຼແກຼມຂອງທ່ານແລະທ່ານຄວນຈັດການກັບພວກມັນຕາມຄວາມເຫມາະສົມ.
ຄວາມຄິດເຫັນ
ໃນປັດຈຸບັນ, ພວກເຮົາກໍາລັງຈະສົນທະນາກ່ຽວກັບຄໍາເຫັນໃນ python. ພວກເຮົາໃຊ້ຄໍາຄິດເຫັນເພື່ອເພີ່ມບັນທຶກຫຼືຄໍາຄິດຄໍາເຫັນໃສ່ໂຄງການຂອງພວກເຮົາເພື່ອປັບປຸງການອ່ານແລະສົ່ງຂໍ້ຄວາມບາງຢ່າງໃຫ້ກັບຜູ້ທີ່ອ່ານລະຫັດຂອງພວກເຮົາ.
ຄຳເຫັນສາມາດຂຽນໄວ້ໃນໂປຣແກຣມໄດ້ໂດຍໃຊ້ເຄື່ອງໝາຍ #. ທຸກຢ່າງທີ່ທ່ານຂຽນຫຼັງຈາກ # ຈະຖືກລະເລີຍໂດຍ Python compiler ແລະຈະບໍ່ຖືກປະຕິບັດ. ທ່ານສາມາດເພີ່ມຄໍາຄິດເຫັນກ່ຽວກັບເສັ້ນສ່ວນບຸກຄົນເຊັ່ນດຽວກັນກັບຫຼັງຈາກເສັ້ນລະຫັດ.
ດ້ວຍຄວາມຄິດເຫັນເຫຼົ່ານີ້, ພວກເຮົາສາມາດອະທິບາຍບາງຢ່າງກ່ຽວກັບລະຫັດຂອງພວກເຮົາ, ພວກເຮົາສາມາດໃຊ້ພວກມັນເປັນການເຕືອນເພື່ອແກ້ໄຂສິ່ງຕ່າງໆຫຼືລຶບລ້າງສິ່ງຕ່າງໆອອກ, ຫຼືພວກເຮົາສາມາດນໍາໃຊ້ມັນເພື່ອຕິດຕໍ່ສື່ສານກັບຜູ້ພັດທະນາອື່ນໆທີ່ອ່ານລະຫັດຂອງພວກເຮົາຫຼືເພື່ອອະທິບາຍວ່າເປັນຫຍັງພວກເຮົາຂຽນລະຫັດນີ້ໃນ ວິທີການທີ່ແນ່ນອນ. ເຫຼົ່ານີ້ແມ່ນກໍລະນີທີ່ດີສໍາລັບການນໍາໃຊ້ຄໍາເຫັນ. ພວກເຮົາຍັງສາມາດມີຄໍາເຫັນໃນໄລຍະຫຼາຍສາຍ. ແຕ່ລະແຖວຄວນເລີ່ມຕົ້ນດ້ວຍເຄື່ອງໝາຍ # ໃໝ່. ໃນປັດຈຸບັນສິ່ງຫນຶ່ງທີ່ທ່ານຈໍາເປັນຕ້ອງຫລີກລ່ຽງໃນເວລາທີ່ໃຊ້ຄໍາຄິດຄໍາເຫັນແມ່ນການອະທິບາຍສິ່ງທີ່ລະຫັດເຮັດ.
ນີ້ແມ່ນຕົວຢ່າງຂອງຄວາມຄິດເຫັນທີ່ບໍ່ດີ:
ນີ້ແມ່ນຄວາມຄິດເຫັນທີ່ບໍ່ດີເພາະວ່າມັນບອກຂ້ອຍຢ່າງຈະແຈ້ງ. ມັນບອກຂ້ອຍວ່າແຖວຕໍ່ໄປຈະພິມ "Sun sets in the West". ໃນປັດຈຸບັນບັນຫາກັບຄໍາຄິດຄໍາເຫັນນີ້ແມ່ນວ່ານອກຈາກການ verbose ແລະຊ້ໍາຊ້ອນຖ້າຫາກວ່າທ່ານມາທີ່ນີ້ແລະປ່ຽນຕາເວັນຕົກເປັນຕາເວັນອອກ, ຄວາມຄິດເຫັນນີ້ໄດ້ຮັບການລ້າສະໄຫມ. ດັ່ງນັ້ນ, ທຸກໆຄັ້ງທີ່ພວກເຮົາປັບປຸງລະຫັດຂອງພວກເຮົາ, ພວກເຮົາຈະຕ້ອງກັບຄືນມາແລະແກ້ໄຂຄໍາຄິດຄໍາເຫັນທີ່ສອດຄ້ອງກັນ.
ໃນສັ້ນ, ໃຊ້ຄໍາຄິດເຫັນຂອງທ່ານເພື່ອຕອບວ່າແນວໃດແລະເປັນຫຍັງແທນທີ່ຈະແມ່ນຫຍັງ.
ນີ້ແມ່ນຕົວຢ່າງຂອງຄໍາເຫັນທີ່ດີ:
ໃນຄໍາເຫັນທໍາອິດ, ຂ້ອຍເຕືອນຕົວເອງວ່າຂ້ອຍຈໍາເປັນຕ້ອງປັບປຸງມູນຄ່າລາຍໄດ້ນີ້ກ່ອນທີ່ຈະສໍາເລັດໂຄງການແລະມູນຄ່າທີສອງແມ່ນບອກຜູ້ພັດທະນາອື່ນໆທີ່ອ່ານລະຫັດຂອງຂ້ອຍວ່າຄວາມຜິດພາດທັງຫມົດບໍ່ໄດ້ຖືກຈັດການໃນໂຄງການນີ້.
ສະຫຼຸບແລ້ວ, ທ່ານຄວນຫຼີກເວັ້ນຄໍາຄິດຄໍາເຫັນຊ້ໍາຊ້ອນແລະຄໍາຄິດເຫັນຂອງທ່ານຄວນເພີ່ມມູນຄ່າບາງຢ່າງໃຫ້ກັບລະຫັດຂອງທ່ານ.
ສະຫຼຸບ!
ຂໍ້ຍົກເວັ້ນແລະຄໍາເຫັນແມ່ນສອງດ້ານຂອງການຂຽນໂປລແກລມທີ່ມັກຈະຖືກມອງຂ້າມແລະຄວາມສໍາຄັນຂອງພວກມັນມັກຈະຖືກຈັດອັນດັບຫນ້ອຍ.
ການຂັດຂືນໂຄງການຂອງເຈົ້າແມ່ນເກືອບບໍ່ດີເທົ່າທີ່ບໍ່ໄດ້ສະແດງຄໍາຄິດເຫັນກ່ຽວກັບລະຫັດຂອງເຈົ້າໃນບ່ອນທີ່ຈໍາເປັນ. ການບັນຍາຍຕໍ່ໄປຈະເນັ້ນໃສ່ Classes ແລະ Constructors.
ອອກຈາກ Reply ເປັນ