🎯 Ku soo dhowow Casharka Ugu Dambeeya!
Casharkaan waa xidhitaanka koorsada — Project Final. Waxaad xididaysaa wixii aad baratay: variables, control flow, loops, functions, modules, iyo Bash scripting si aad u sameyso barnaamijyo dhabta ah.
Waxaad lahaan doontaa 2 Project oo aad doorato mid (ama labadaba samaynkartaa):
- Project A: Calculator Complete (Python)
- Project B: File Organizer Automated (Python + Bash)
Project A: Calculator Complete (Python)
Waa calculator-ka oo dhammaystiran leh menu, xisaabinta aasaasiga, iyo astaan-astaan xallin kara khalad.
#!/usr/bin/env python3
"""
Calculator Complete — Fadal Store Python Project
Casharka 7aad: Project Final
"""
def isugeyn(a, b):
return a + b
def jarrid(a, b):
return a - b
def xidid(a, b):
return a * b
def qeybso(a, b):
if b == 0:
return None, "Khalad: Lama qeybin karo eber!"
return a / b, None
def xisaabiye():
print("=" * 45)
print(" 🔢 XISAABIYAHA FADAL STORE")
print("=" * 45)
while True:
print("\nDhoo:")
print(" 1. Isugeyn (+)")
print(" 2. Jarrid (-)")
print(" 3. Xidid (×)")
print(" 4. Qeybso (÷)")
print(" 0. Ka bax")
doorasho = input("\nDoor (0-4): ").strip()
if doorasho == "0":
print("\n👋 Mahadsanid! Fadal Store.")
break
if doorasho not in ["1", "2", "3", "4"]:
print("❌ Doorasho khaldan. Isku day mar kale.")
continue
try:
a = float(input("Tirada 1aad: "))
b = float(input("Tirada 2aad: "))
except ValueError:
print("❌ Fadlan geli tiro sahiih ah.")
continue
if doorasho == "1":
natiijo = isugeyn(a, b)
calaamad = "+"
elif doorasho == "2":
natiijo = jarrid(a, b)
calaamad = "-"
elif doorasho == "3":
natiijo = xidid(a, b)
calaamad = "×"
else:
natiijo, khalad = qeybso(a, b)
if khalad:
print(f"❌ {khalad}")
continue
calaamad = "÷"
print(f"\n✅ {a} {calaamad} {b} = {natiijo}")
# Bilow xisaabiyaha
if __name__ == "__main__":
xisaabiye()
💡 Socodsii: Keydi koodhkan xisaabiye.py oo ku socodsii: python3 xisaabiye.py
Project B: File Organizer (Python + Bash)
Barnaamijkan wuxuu si otomaatig ah u kala soocaa faylasha galkaaga si noockooda.
#!/usr/bin/env python3
"""
File Organizer — Fadal Store Python Project
Automatically organizes files by type
"""
import os
import shutil
from datetime import datetime
# Noocyada faylasha iyo galalkooda
NOOCYADA = {
"Sawirrada": [".jpg", ".jpeg", ".png", ".gif", ".svg", ".webp", ".bmp"],
"Videos": [".mp4", ".avi", ".mkv", ".mov", ".wmv", ".flv"],
"Muusiga": [".mp3", ".wav", ".flac", ".aac", ".ogg", ".m4a"],
"Dukumintiga":[".pdf", ".doc", ".docx", ".txt", ".xlsx", ".pptx", ".odt"],
"Koodhka": [".py", ".js", ".html", ".css", ".java", ".cpp", ".sh"],
"Compressed":[".zip", ".rar", ".tar", ".gz", ".7z"],
}
def hel_nooca(magac_faylo):
"""Soo celi nooca faylka."""
_, xiga = os.path.splitext(magac_faylo)
xiga = xiga.lower()
for nooc, xigayaasha in NOOCYADA.items():
if xiga in xigayaasha:
return nooc
return "Kale"
def organize_galka(dariiqa_galka="."):
"""Kala sooc faylasha galka."""
if not os.path.exists(dariiqa_galka):
print(f"❌ Galka ma jiro: {dariiqa_galka}")
return
print(f"\n📁 Kala soocinaya: {os.path.abspath(dariiqa_galka)}")
print("=" * 50)
la_raro = 0
la_kicinay = 0
for magac in os.listdir(dariiqa_galka):
dariiqa_dhamaan = os.path.join(dariiqa_galka, magac)
# Ka dhaaf galalka
if os.path.isdir(dariiqa_dhamaan):
continue
# Hel nooca
nooc = hel_nooca(magac)
# Samee galka haddaan jirin
galka_nooca = os.path.join(dariiqa_galka, nooc)
os.makedirs(galka_nooca, exist_ok=True)
# Raac faylka
meesha_cusub = os.path.join(galka_nooca, magac)
# Hadduu faylo la mid ah jiro, ku dar taariikhda
if os.path.exists(meesha_cusub):
taariikh = datetime.now().strftime("%Y%m%d_%H%M%S")
magac_cusub = f"{os.path.splitext(magac)[0]}_{taariikh}{os.path.splitext(magac)[1]}"
meesha_cusub = os.path.join(galka_nooca, magac_cusub)
shutil.move(dariiqa_dhamaan, meesha_cusub)
print(f"✅ {magac:30} → {nooc}/")
la_raro += 1
if la_raro == 0:
print("ℹ️ Faylo la raraysto ma jirin.")
else:
print(f"\n🎉 Dhammaystay! {la_raro} faylo ayaa la kala soocay.")
# Bilow
if __name__ == "__main__":
print("=" * 50)
print(" 📂 FILE ORGANIZER — FADAL STORE")
print("=" * 50)
galka = input("\nGeli dariiqa galka (Enter = galka hadda joogto): ").strip()
if not galka:
galka = "."
organize_galka(galka)
Bonus: Ku dar Log-ka (Taariikh Xog)
# Ku dar function-kan koodhkaaga si uu u keydiyo wixii la sameeyay
import json
from datetime import datetime
def kaydi_log(la_sameyay, tirada):
log_entry = {
"taariikhda": datetime.now().isoformat(),
"hawlaha": la_sameyay,
"tirada_faylasha": tirada
}
with open("organize_log.json", "a") as f:
json.dump(log_entry, f)
f.write("\n")
print(f"📝 Log la kaydiyay: organize_log.json")
🏆 Hambalyo! Waxaad Dhammaystirtay Koorsada Oo Dhan!
Waxaad baratay: Variables, Control Flow, Loops, Functions, Modules, Bash Scripting, iyo samaysay Projects dhabta ah. Hadda waa xirfadle Python! Tallaabada xiga: Baaro Koorsada Cybersecurity ama bilow freelancing-ka adoo isticmaalaya xirfadahaaga cusub.