THE FUTURE MARKETACADEMY
Your classroomRoom 07 · Tech Lab
School of Data & Tech

Python para sa Data: mga file, library at automation

Step 6 of 8 in Tech Lab

Next in your path: 7.6.2 Business Websites: design, SEO and forms

What you'll be able to do
  • Gumamit ng mga file at folder nang ligtas gamit ang pathlib.
  • Magbasa at magsulat ng CSV at JSON, ang dalawang pinakakaraniwang format ng data.
  • Tumawag ng web API mula sa Python, humawak ng mga error at gawing data na magagamit ang sagot.
  • Mag-set up ng project na may virtual environment at mag-install ng mga library gamit ang pip.
  • Gumamit ng pandas para mag-load, maglinis at mag-summarize ng table ng data.
  • Pagsamahin ang lahat sa isang script na nagpoproseso ng isang folder ng mga file at gumagawa ng report, na may malinaw na mensahe kapag may nagkamali.

Bago ang course na ito: Python for Beginners (course 7.5). Dapat marunong ka nang magpatakbo ng Python file, gumamit ng variable, if at for, list at dictionary, magsulat ng function, gumamit ng try at except, at magbasa ng CSV file gamit ang csv module. Kung bago pa ang mga iyan sa iyo, kunin muna ang 7.5. Hindi na uulitin ng course na ito ang mga iyon.

Bawat code example sa course na ito ay pinatakbo at tiningnan ang output. Ang mga pandas example ay pinatakbo gamit ang pandas 3.1.1 sa Python 3.11 at muling sinuri gamit ang pandas 2.3.3 sa Python 3.9, at pareho ang resulta. Sadyang maliit ang mga example file, para makumpirma mo ang mga sagot nang mano-mano.

Words in this course 34Open the Vocabulary Hall
01

Mga file at folder gamit ang pathlib

In simple words

Ang file path ay ang address ng isang file, parang address ng bahay sa kalye. Sa halip na buuin ang address sa pagdidikit-dikit ng text, binibigyan ka ng pathlib ng maliit na address object na marunong magdugtong ng mga kalye, tumingin kung may bahay doon at maglista ng mga bahay sa isang kalye.

Key facts
  • Ang from pathlib import Path ang nagbibigay sa iyo ng Path class. Pareho ang takbo nito sa Windows, Mac at Linux.
  • Pagdugtungin ang mga bahagi gamit ang / operator: Path("reports") / "2026" / "march". Iniiwasan nito ang mga pagkakamali sa slash sa pagitan ng iba't ibang system.
  • Mga kapaki-pakinabang na bahagi ng path: .name (ang buong pangalan ng file), .stem (ang pangalan na walang dulo) at .suffix (ang dulo, tulad ng .csv).
  • Sinasabi ng p.exists() kung may file o folder.
  • Ibinabalik ng p.read_text(encoding="utf-8") ang text ng file. Ang p.write_text(text, encoding="utf-8") ay nagsusulat ng text at binubura at pinapalitan ang file na nandoon na.
  • Laging ilagay ang encoding="utf-8". Kung wala ito, gagamitin ng Python ang default encoding ng computer, kaya puwedeng iba ang kilos ng parehong program sa iba't ibang makina.
  • Gumagawa ng folder ang p.mkdir(parents=True, exist_ok=True), gumagawa rin ng mga nawawalang parent folder, at hindi nagrereklamo kung nandoon na ang folder.
  • Hinahanap ng folder.glob("*.csv") ang mga file na tumutugma sa pattern. Walang garantiyang pagkakasunud-sunod ang mga resulta, kaya balutin ito ng sorted(...).
  • Kapag nagbasa ka ng file na wala roon, magkakaroon ng FileNotFoundError. I-catch ito gamit ang try at except, o tingnan muna ang exists().
Halimbawa (tested)
from pathlib import Path

base = Path("work")
base.mkdir(parents=True, exist_ok=True)

note = base / "notes.txt"
note.write_text("Order 1001 shipped\nOrder 1002 late\n", encoding="utf-8")
(base / "b.csv").write_text("x\n1\n", encoding="utf-8")
(base / "a.csv").write_text("x\n2\n", encoding="utf-8")

print(note.exists(), note.name, note.stem, note.suffix)
text = note.read_text(encoding="utf-8")
print(text.splitlines()[1])
for p in sorted(base.glob("*.csv")):
  print(p.name)
print(Path("work/missing.txt").exists())

Output: True notes.txt notes .txt, tapos Order 1002 late, tapos a.csv at b.csv sa magkahiwalay na linya, tapos False.

Step by step
  1. Gumawa ng bagong folder para sa course na ito at magbukas ng terminal doon.
  2. Gumawa ng file na tinatawag na files.py at i-paste ang example sa itaas.
  3. Patakbuhin ito gamit ang python files.py (Windows) o python3 files.py (Mac).
  4. Tingnan ang folder mo: dapat may folder ka na ngayong tinatawag na work na may tatlong file.
  5. Baguhin ang program para gumawa ng folder na reports/2026/march gamit ang mkdir(parents=True, exist_ok=True), tapos patakbuhin ito nang dalawang beses. Hindi dapat mag-crash sa ikalawang takbo.
  6. Magdagdag ng try at except FileNotFoundError sa pagbasa ng file na wala, at mag-print ng magiliw na mensahe.
  7. Check: tugma ang mga linya ng output sa example, at walang error na lumalabas sa ikalawang takbo ng mkdir program.
Watch on YouTube
Python tutorial: pathlib, the modern way to handle file pathsCorey Schafer · YouTube · youtube.com

Videos by other creators on YouTube, for reference. They are not made by or affiliated with The Future Market.

LESSON 01Mga file at folder gamit ang pathlib
LESSON 01 / ANIMATED LESSON / ENGLISH VOICE00:00 / 01:00
Read the video script
[Host] "Halos lahat ng trabaho sa data ay nagsisimula sa mga file. Hawakan natin sila sa ligtas na paraan."
[Screen: from pathlib import Path, tapos Path("work") / "notes.txt"] "Gumagawa ng address ang Path. Pinagdudugtong ng slash ang mga bahagi, sa kahit anong computer."
[Screen: write_text tapos read_text na may encoding utf-8] "Magsulat ng text, magbasa ng text. Laging sabihin ang utf-8, para gumana sa bawat makina."
[Screen: sorted(base.glob("*.csv")) na nagpi-print ng a.csv at b.csv] "Hinahanap ng glob ang bawat CSV sa isang folder. I-sort ang listahan, para laging pareho ang pagkakasunud-sunod."
Try it now

Sumulat ng program na gumagawa ng folder na tinatawag na inbox, nagsusulat ng tatlong maliit na CSV file doon gamit ang write_text, at pagkatapos ay nagpi-print ng pangalan at dulo ng bawat CSV sa folder na iyon, nakaayos ayon sa sort.

ClaudeStuck? Copy a ready-made prompt for Claude

Copy this, open Claude, paste it, and Claude will walk you through the lesson step by step.

For a grown-up: Claude is for adults (18+). Copy this, paste it into Claude, and use the answer to explain the lesson to your child.

I'm learning "Python para sa Data: mga file, library at automation" on The Future Market. Lesson 1: "Mga file at folder gamit ang pathlib".

What the lesson teaches:
- Ang from pathlib import Path ang nagbibigay sa iyo ng Path class. Pareho ang takbo nito sa Windows, Mac at Linux.
- Pagdugtungin ang mga bahagi gamit ang / operator: Path("reports") / "2026" / "march". Iniiwasan nito ang mga pagkakamali sa slash sa pagitan ng iba't ibang system.
- Mga kapaki-pakinabang na bahagi ng path: .name (ang buong pangalan ng file), .stem (ang pangalan na walang dulo) at .suffix (ang dulo, tulad ng .csv).
- Sinasabi ng p.exists() kung may file o folder.
- Ibinabalik ng p.read_text(encoding="utf-8") ang text ng file. Ang p.write_text(text, encoding="utf-8") ay nagsusulat ng text at binubura at pinapalitan ang file na nandoon na.
- Laging ilagay ang encoding="utf-8". Kung wala ito, gagamitin ng Python ang default encoding ng computer, kaya puwedeng iba ang kilos ng parehong program sa iba't ibang makina.
- Gumagawa ng folder ang p.mkdir(parents=True, exist_ok=True), gumagawa rin ng mga nawawalang parent folder, at hindi nagrereklamo kung nandoon na ang folder.

The exercise I'm working on:
Sumulat ng program na gumagawa ng folder na tinatawag na inbox, nagsusulat ng tatlong maliit na CSV file doon gamit ang write_text, at pagkatapos ay nagpi-print ng pangalan at dulo ng bawat CSV sa folder na iyon, nakaayos ayon sa sort.

I'm stuck. Please:
1. Explain the main idea in plain, simple words with one everyday example.
2. Walk me through the exercise one small step at a time. Ask me what I've done so far before giving the next step.
3. Don't just give me the final answer. Help me do it myself, and check my work when I share it.
I'm a parent helping my child (about 8 years old) with a lesson called "Mga file at folder gamit ang pathlib" from the course "Python para sa Data: mga file, library at automation".

Here's what the lesson says:
Ang file path ay ang address ng isang file, parang address ng bahay sa kalye. Sa halip na buuin ang address sa pagdidikit-dikit ng text, binibigyan ka ng pathlib ng maliit na address object na marunong magdugtong ng mga kalye, tumingin kung may bahay doon at maglista ng mga bahay sa isang kalye.

The activity:
Sumulat ng program na gumagawa ng folder na tinatawag na inbox, nagsusulat ng tatlong maliit na CSV file doon gamit ang write_text, at pagkatapos ay nagpi-print ng pangalan at dulo ng bawat CSV sa folder na iyon, nakaayos ayon sa sort.

Please explain this so an 8-year-old understands: short sentences, a fun everyday example, and no hard words.
Then give me 3 simple questions I can ask my child to check they understood, and a way to do the activity together, one tiny step at a time.
Open Claude
Sources
My notes
02

CSV at JSON: pagbasa at pagsulat ng data

This lesson is part of full access: every course and every level for one payment.

03

Pagtawag sa web API

This lesson is part of full access: every course and every level for one payment.

04

Mga library, pip at virtual environment

This lesson is part of full access: every course and every level for one payment.

05

pandas: mag-load at mag-explore ng table

This lesson is part of full access: every course and every level for one payment.

06

pandas: maglinis at mag-summarize

This lesson is part of full access: every course and every level for one payment.

07

I-automate ang paulit-ulit na gawain

This lesson is part of full access: every course and every level for one payment.

++

Final project

This lesson is part of full access: every course and every level for one payment.

??

Quiz

  1. Paano mo ligtas na pagdudugtungin ang mga pangalan ng folder gamit ang pathlib?

  2. Ano ang ginagawa ng mkdir(parents=True, exist_ok=True)?

  3. Bakit ilalagay ang encoding="utf-8" sa pagbasa at pagsulat ng text?

  4. Ano ang pagkakaiba ng json.load at json.loads?

  5. Ano ang nagiging JSON null sa Python?

  6. Alin ang unang dapat i-catch, ang HTTPError o URLError?

  7. Bakit magtatakda ng timeout sa web request?

  8. Saan dapat itago ang API key?

  9. Aling file ang nagpapahintulot sa iba na buuing muli ang virtual environment mo?

  10. Ano ang ginagawa ng df.drop_duplicates()?

  11. Ano ang ginagawa ng pd.to_numeric(col, errors="coerce") sa salitang "ten"?

  12. Bakit ilalagay ang index=False sa to_csv?

EX

Final exam

This lesson is part of full access: every course and every level for one payment.

CE

Certificate

This lesson is part of full access: every course and every level for one payment.