0Pricing
Python Academy · บทเรียน

การทำงานกับเส้นทางไฟล์ด้วย pathlib

นำทางและจัดการเส้นทางไฟล์ด้วยโมดูล pathlib รุ่นใหม่

การทำงานกับเส้นทางไฟล์ด้วย pathlib เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

บทนำ

pathlib มีอินเทอร์เฟซเชิงวัตถุสำหรับเส้นทางระบบไฟล์ ช่วยแทนที่การจัดการสตริงด้วย os.path ที่เปราะบาง

การสร้าง Path

from pathlib import Path; p = Path('data/file.txt') สร้างออบเจ็กต์เส้นทาง ซึ่งใช้งานได้บนทุกแพลตฟอร์ม
from pathlib import Path
p = Path('data/file.txt')
print(p)

การรวมเส้นทางด้วย /

p = Path('data') / 'subdir' / 'file.txt' ใช้ตัวดำเนินการ / เพื่อรวมส่วนต่าง ๆ ของเส้นทาง ทำให้โค้ดสะอาดและใช้งานข้ามแพลตฟอร์มได้
from pathlib import Path
p = Path('data') / 'sub' / 'file.txt'
print(p)

คุณสมบัติของเส้นทาง

p.name ให้ชื่อไฟล์ p.stem ให้ชื่อโดยไม่มีนามสกุล p.suffix ให้นามสกุล และ p.parent ให้ไดเรกทอรี
from pathlib import Path
p = Path('data/report.csv')
print(p.name, p.stem, p.suffix, p.parent)

การตรวจสอบการมีอยู่

p.exists() ให้ค่า True หากเส้นทางมีอยู่ ใช้ p.is_file() สำหรับไฟล์ และ p.is_dir() สำหรับไดเรกทอรี
from pathlib import Path
p = Path('/tmp')
print(p.exists(), p.is_dir(), p.is_file())

การอ่านและการเขียน

p.read_text(encoding='utf-8') อ่านไฟล์เป็นสตริง ส่วน p.write_text('content') ใช้เขียนสตริง
from pathlib import Path
p = Path('/tmp/test_pathlib.txt')
p.write_text('hello pathlib')
print(p.read_text())

การวนซ้ำเนื้อหาในไดเรกทอรี

for child in p.iterdir(): ให้ผลเป็นออบเจ็กต์ Path สำหรับรายการทั้งหมด ส่วน p.glob('*.py') ใช้ค้นหารายการที่ตรงกับรูปแบบ
from pathlib import Path
for child in Path('/tmp').iterdir():
    if child.suffix == '.txt':
        print(child.name)
        break

การค้นหาแบบ Glob ซ้ำในไดเรกทอรี

p.rglob('*.json') ค้นหาไฟล์ .json ทั้งหมดภายใต้ p แบบลงไปในไดเรกทอรีย่อยอย่างต่อเนื่อง สะอาดกว่า os.walk() มาก
from pathlib import Path
for f in Path('/tmp').rglob('*.txt'):
    print(f.name)
    break

การสร้างไดเรกทอรี

p.mkdir(parents=True, exist_ok=True) สร้างไดเรกทอรีรวมถึงไดเรกทอรีแม่ทั้งหมด โดย exist_ok=True จะป้องกัน FileExistsError
from pathlib import Path
Path('/tmp/test_dir/sub').mkdir(parents=True, exist_ok=True)
print('created')

การเปลี่ยนชื่อและการลบ

p.rename(new) เปลี่ยนชื่อไฟล์ p.unlink() ลบไฟล์ และ p.rmdir() ลบไดเรกทอรีที่ว่างอยู่
from pathlib import Path
p = Path('/tmp/test_pathlib.txt')
if p.exists():
    p.unlink()
    print('deleted')

เส้นทางสัมบูรณ์และเส้นทางสัมพัทธ์

p.resolve() คืนค่าเส้นทางสัมบูรณ์โดยแก้ลิงก์สัญลักษณ์แล้ว ส่วน p.relative_to(base) คำนวณเส้นทางสัมพัทธ์
from pathlib import Path
print(Path('.').resolve())

ตรวจสอบความเข้าใจ

ตัวดำเนินการใดใช้รวมส่วนต่าง ๆ ของ Path ใน pathlib?

สรุป

Path ใน pathlib ใช้ / เพื่อรวมส่วนต่าง ๆ ใช้ .name/.stem/.suffix/.parent เพื่อเข้าถึงส่วนประกอบ ใช้ read_text/write_text สำหรับการอ่านและเขียน และใช้ mkdir, unlink, glob สำหรับการทำงานกับระบบไฟล์

ไปต่อ

ทำได้ดีมาก! ไปยังบทเรียนถัดไปเพื่อพัฒนาทักษะต่อไป

คำถามที่พบบ่อย

บทเรียน “การทำงานกับเส้นทางไฟล์ด้วย pathlib” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การทำงานกับเส้นทางไฟล์ด้วย pathlib” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การทำงานกับเส้นทางไฟล์ด้วย pathlib”

นำทางและจัดการเส้นทางไฟล์ด้วยโมดูล pathlib รุ่นใหม่ คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

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

บทเรียน “การทำงานกับเส้นทางไฟล์ด้วย pathlib” ใช้เวลานานแค่ไหน

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

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การเปิดและอ่านไฟล์
  2. การเขียนและเพิ่มข้อมูลในไฟล์
  3. การใช้คำสั่ง with กับไฟล์
  4. การทำงานกับเส้นทางไฟล์ด้วย pathlib
← กลับไปที่ Python Academy