eitaa logo
آموزش پایتون
63 دنبال‌کننده
244 عکس
106 ویدیو
52 فایل
ارتباط: https://eitaa.com/joinchat/956171922Cb501d5a32f لینک همین کانال: @LearnPythonIcy لینک کانال تلگرام: https://t.me/learnpythonicy
مشاهده در ایتا
دانلود
🔥 of Python for AI Challenge Working with CSV files is your first step into real-world data handling 📊 Today you’ll learn how to read, analyze, and extract insights from structured datasets using Python. Small step, big move toward Data Science
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: Error Handling (try / except) ⭐ سطح: متوسط ⏳ زمان تخمینی: 20 تا 35 دقیقه 📝 صورت مسئله: دیتاست زیر را در برنامه قرار دهید: students = { "Ali": 17.8, "Sara": 18.5, "Reza": 15.2, "Nima": 18.1, "Parsa": 16.4 } برنامه باید: ✅ نام دانشجو را از کاربر دریافت کند. ✅ GPA او را نمایش دهد. اما اگر دانشجو در دیتاست وجود نداشت: Student not found! را نمایش دهد و برنامه متوقف نشود. 📌 نمونه خروجی: Enter student name: Ali GPA: 17.8 یا Enter student name: John Student not found! 🎯 Bonus Challenge اگر کاربر ورودی خالی وارد کرد: Please enter a valid name. نمایش داده شود. 📋 هدف: یادگیری مدیریت خطاها؛ مهارتی که در تمام پروژه‌های واقعی Python، Data Science و AI ضروری است. ⏰ مهلت: فردا ساعت 20:00 https://eitaa.com/joinchat/956171922Cb501d5a32f
پاسخ روز یازدهم
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: Object-Oriented Programming (OOP) ⭐ سطح: متوسط ⏳ زمان تخمینی: 25 تا 40 دقیقه 📝 صورت مسئله: تا اینجا اطلاعات دانشجویان را با Dictionary ذخیره می‌کردیم. امروز می‌خواهیم از OOP استفاده کنیم. یک کلاس به نام: Student ایجاد کنید. این کلاس باید شامل موارد زیر باشد: ✅ name ✅ gpa ✅ credits و یک متد به نام: show_info() که اطلاعات دانشجو را نمایش دهد. 📌 نمونه خروجی: Name: Ali GPA: 17.8 Credits: 70 🎯 Bonus Challenge متدی به نام: get_status() بنویسید که وضعیت دانشجو را برگرداند: Graduated In Progress 📋 هدف امروز: آشنایی با OOP و ساخت مدل داده‌ای برای دانشجویان. ⏰ مهلت ارسال پاسخ: فردا ساعت 20:00
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: Searching & Filtering Data ⭐ سطح: متوسط ⏳ زمان تخمینی: 25 تا 40 دقیقه 📝 صورت مسئله: دیتاست زیر را در برنامه قرار دهید: students = [ {"name": "Ali", "gpa": 17.8}, {"name": "Sara", "gpa": 18.5}, {"name": "Reza", "gpa": 15.2}, {"name": "Nima", "gpa": 18.1}, {"name": "Parsa", "gpa": 16.4}, {"name": "Arman", "gpa": 17.1}, {"name": "Mina", "gpa": 19.0} ] برنامه باید: ✅ تمام دانشجویان دارای GPA بالاتر از 18 را نمایش دهد. ✅ تمام دانشجویان دارای GPA کمتر از 16 را نمایش دهد. ✅ تعداد دانشجویان هر گروه را محاسبه کند. 📌 نمونه خروجی: Students With GPA >= 18: Sara Nima Mina Count: 3 🎯 Bonus Challenge دانشجویی را پیدا کنید که GPA او به 18 نزدیک‌تر است. 📋 هدف امروز: تمرین فیلتر کردن داده‌ها؛ یکی از مهم‌ترین مهارت‌ها در Data Analysis. ⏰ مهلت ارسال پاسخ: فردا ساعت 20:00
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: Mini Project — Student Data Analysis System ⭐ سطح: متوسط ⏳ زمان تخمینی: 40 تا 60 دقیقه 📝 صورت مسئله: امروز قرار است با استفاده از مطالب روزهای قبل، یک سیستم کوچک تحلیل اطلاعات دانشجویان بسازید. فایل زیر را با نام: students.csv ایجاد کنید: name,gpa,credits Ali,17.8,70 Sara,18.5,95 Reza,15.2,40 Nima,18.1,120 Parsa,16.4,55 Arman,17.1,80 Mina,19.0,140 Ava,16.8,35 Yasmin,18.7,110 Amir,15.9,65 یک کلاس به نام: Student ایجاد کنید که شامل ویژگی‌های زیر باشد: ✅ "name" ✅ "gpa" ✅ "credits" و متدهای زیر را داشته باشد: ✅ "show_info()" برای نمایش اطلاعات دانشجو ✅ "get_status()" اگر تعداد واحدهای دانشجو حداقل 120 بود: Graduated و در غیر این صورت: In Progress برنامه باید: ✅ فایل CSV را بخواند. ✅ اطلاعات هر دانشجو را به یک شیء از کلاس "Student" تبدیل کند. ✅ تعداد کل دانشجویان را محاسبه کند. ✅ میانگین GPA را محاسبه کند. ✅ دانشجوی دارای بالاترین GPA را پیدا کند. ✅ دانشجویان دارای GPA برابر یا بیشتر از 18 را نمایش دهد. ✅ دانشجویان دارای GPA کمتر از 16 را نمایش دهد. ✅ نام یک دانشجو را از کاربر دریافت و اطلاعات او را جست‌وجو کند. ✅ اگر دانشجو پیدا نشد، پیام زیر را نمایش دهد: Student not found! ✅ با استفاده از "try / except" خطاهای احتمالی خواندن فایل را مدیریت کند. 📌 نمونه خروجی: ===== Student Analysis System ===== Total Students: 10 Average GPA: 17.35 Top Student: Mina (19.0) Students With GPA >= 18: Sara Nima Mina Yasmin Count: 4 Students With GPA < 16: Reza Amir Count: 2 Enter student name: Nima Name: Nima GPA: 18.1 Credits: 120 Status: Graduated 🎯 Bonus Challenge یک منوی ساده طراحی کنید: 1. Show Summary 2. Search Student 3. Show Top Students 4. Show Graduated Students 5. Exit برنامه باید تا زمانی که کاربر گزینه "5" را انتخاب نکرده است، متوقف نشود. 📋 هدف امروز: ترکیب مهارت‌های روزهای قبل و ساخت اولین سیستم کوچک تحلیل داده با Python. شما تا اینجا یاد گرفته‌اید: ✅ داده‌ها را از فایل بخوانید. ✅ داده‌ها را مدل‌سازی کنید. ✅ خطاها را مدیریت کنید. ✅ داده‌ها را جست‌وجو و فیلتر کنید. ✅ اطلاعات آماری استخراج کنید. از روز بعد وارد NumPy می‌شویم تا همین محاسبات را سریع‌تر، کوتاه‌تر و حرفه‌ای‌تر انجام دهیم. ⏰ مهلت ارسال پاسخ: فردا ساعت 20:00
پاسخ روز سیزدهم
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: Introduction to NumPy ⭐ سطح: متوسط ⏳ زمان تخمینی: 20 تا 40 دقیقه 📝 صورت مسئله: کتابخانه NumPy را نصب و import کنید. آرایه زیر را در برنامه قرار دهید: scores = [18, 15, 20, 17, 19, 14, 16, 18, 20, 17] آن را به NumPy Array تبدیل کنید. برنامه باید: ✅ میانگین نمرات را محاسبه کند. ✅ بیشترین نمره را پیدا کند. ✅ کمترین نمره را پیدا کند. ✅ مجموع نمرات را محاسبه کند. 📌 نمونه خروجی: Average: 17.4 Maximum: 20 Minimum: 14 Sum: 174 🎯 Bonus Challenge انحراف معیار (Standard Deviation) نمرات را محاسبه کنید. 📋 هدف امروز: آشنایی با NumPy و انجام محاسبات عددی سریع‌تر از Python معمولی. ⏰ مهلت ارسال پاسخ: فردا ساعت 20:00
آموزش پایتون
🔥 چالش ۳۰ روزه Python for AI #Day14 🎯 موضوع: Mini Project — Student Data Analysis System ⭐ سطح: م
import csv class Student: def init(self, name, gpa, credits): self.name = name self.gpa = gpa self.credits = credits def get_status(self): if self.credits >= 120: return "Graduated" return "In Progress" def show_info(self): print(f"Name: {self.name}") print(f"GPA: {self.gpa}") print(f"Credits: {self.credits}") print(f"Status: {self.get_status()}") def load_students(filename): students = [] try: with open(filename, "r", encoding="utf-8") as file: reader = csv.DictReader(file) for row in reader: student = Student( name=row["name"].strip(), gpa=float(row["gpa"]), credits=int(row["credits"]) ) students.append(student) except FileNotFoundError: print(f"Error: {filename} was not found.") except (ValueError, KeyError): print("Error: Invalid data in CSV file.") except OSError as error: print(f"Error reading file: {error}") return students def show_summary(students): if not students: print("No student data available.") return average_gpa = sum(student.gpa for student in students) / len(students) top_student = max(students, key=lambda student: student.gpa) high_gpa_students = [ student for student in students if student.gpa >= 18 ] low_gpa_students = [ student for student in students if student.gpa < 16 ] print("\n= Student Analysis System =") print(f"\nTotal Students: {len(students)}") print(f"Average GPA: {average_gpa:.2f}") print( f"Top Student: {top_student.name} " f"({top_student.gpa})" ) print("\nStudents With GPA >= 18:") for student in high_gpa_students: print(student.name) print(f"\nCount: {len(high_gpa_students)}") print("\nStudents With GPA < 16:") for student in low_gpa_students: print(student.name) print(f"\nCount: {len(low_gpa_students)}") def search_student(students): name = input("\nEnter student name: ").strip() if not name: print("Please enter a valid name.") return for student in students: if student.name.lower() == name.lower(): print() student.show_info() return print("Student not found!") def show_top_students(students): top_students = sorted( students, key=lambda student: student.gpa, reverse=True ) print("\n= Top Students =") for rank, student in enumerate(top_students, start=1): print(f"{rank}. {student.name} - {student.gpa}") def show_graduated_students(students): graduated_students = [ student for student in students if student.get_status() == "Graduated" ] print("\n= Graduated Students =") if not graduated_students: print("No graduated students found.") return for student in graduated_students: print( f"{student.name} - " f"{student.credits} Credits" ) def show_menu(): print("\n===== Student Analysis Menu =====") print("1. Show Summary") print("2. Search Student") print("3. Show Top Students") print("4. Show Graduated Students") print("5. Exit") def main(): students = load_students("students.csv") if not students: return while True: show_menu() choice = input("\nEnter your choice: ").strip() if choice == "1": show_summary(students) elif choice == "2": search_student(students) elif choice == "3": show_top_students(students) elif choice == "4": show_graduated_students(students) elif choice == "5": print("\nProgram closed.") break else: print("\nInvalid choice. Please select 1 to 5.") if name == "__main__": main()