Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะค้นหาไฟล์ทั้งหมดในไดเร็กทอรีที่มีนามสกุล .txt ใน Python ได้อย่างไร


คุณสามารถใช้เมธอด os.listdir เพื่อรับไดเร็กทอรีและไฟล์ทั้งหมดในไดเร็กทอรี จากนั้นกรองรายการเพื่อรับเฉพาะไฟล์และตรวจสอบนามสกุลด้วย

ตัวอย่าง

>>> import os
>>> file_list = [f for f in os.listdir('.') if os.path.isfile(os.path.join('.', f)) and f.endswith('.txt')]
>>> print file_list
['LICENSE.txt', 'NEWS.txt', 'README.txt']

วิธี endwith เป็นสมาชิกของคลาสสตริงที่ตรวจสอบว่าสตริงลงท้ายด้วยส่วนต่อท้ายที่แน่นอนหรือไม่

คุณยังสามารถใช้โมดูล glob เพื่อทำสิ่งเดียวกันได้:

>>> import glob, os
>>> file_list = [f for f in glob.glob("*.txt")]
>>> print file_list
['LICENSE.txt', 'NEWS.txt', 'README.txt']