ฉันกำลังเขียนสคริปต์ที่ทำบางสิ่งบางอย่างกับไฟล์ข้อความ (สิ่งที่ไม่เกี่ยวข้องกับคำถามของฉัน) ดังนั้นก่อนที่ฉันจะทำบางสิ่งกับไฟล์ฉันต้องการตรวจสอบว่ามีไฟล์อยู่หรือไม่ ฉันสามารถทำสิ่งนี้ได้โดยไม่มีปัญหา แต่ปัญหาคือความสวยงาม
นี่คือรหัสของฉันใช้สิ่งเดียวกันในสองวิธีที่แตกต่างกัน
def modify_file(filename):
assert os.path.isfile(filename), 'file does NOT exist.'
Traceback (most recent call last):
File "clean_files.py", line 15, in <module>
print(clean_file('tes3t.txt'))
File "clean_files.py", line 8, in clean_file
assert os.path.isfile(filename), 'file does NOT exist.'
AssertionError: file does NOT exist.
หรือ:
def modify_file(filename):
if not os.path.isfile(filename):
return 'file does NOT exist.'
file does NOT exist.
วิธีแรกสร้างผลลัพธ์ที่ไม่สำคัญส่วนใหญ่สิ่งเดียวที่ฉันสนใจคือไฟล์ไม่มีอยู่
วิธีที่สองส่งคืนสตริงมันเป็นเรื่องง่าย
คำถามของฉันคือ: วิธีใดดีกว่าสำหรับให้ผู้ใช้ทราบว่าไม่มีไฟล์อยู่? การใช้assert
วิธีการดูเหมือนว่าจะไพเราะมากกว่าอย่างใด