آموزش برنامه‌نویسی پایتون و هوش مصنوعی
140 subscribers
358 photos
190 videos
41 files
172 links
🎯 یادگیری پایتون با رویکردی متفاوت
🚀 آموزش‌های کاملاً عملی و پروژه‌محور
💻 مسیر تبدیل شدن به یک برنامه‌نویس حرفه‌ای
🌟 فرقی نداره مبتدی هستی یا پیشرفته، از هر سطحی شروع کن و پایتون رو اصولی یاد بگیر
📩 ارتباط با ادمین: @YMahmoodian
09156519984
Download Telegram
بسمه‌تعالی

با سلام خدمت دوستان گرامی،

📅 امروز، به لطف خدا، اولین جلسه دوره‌ی مقدماتی زبان برنامه‌نویسی پایتون در کانون شهید صیاد شیرازی، با حضور پرشور برادران و خواهران برگزار شد.
از استقبال گرم شما عزیزان صمیمانه تشکر می‌کنیم.

🕘 زمان برگزاری کلاس‌ها (با توجه به استقبال دوستان، زمان افزایش یافت):

برادران: شنبه و دوشنبه، ساعت ۸:۴۵ تا ۱۰:۱۵ صبح

خواهران: شنبه و دوشنبه، ساعت ۱۰:۱۵ تا ۱۱:۴۵ صبح

📌 دوستانی که هنوز مشخصات و مدارک خود را تحویل نداده‌اند، لطفاً هرچه سریع‌تر به آقای کفاشان ارائه دهند تا فرآیند ثبت‌نام تکمیل شود.

📞 جهت هماهنگی و تحویل مدارک:
۰۹۳۷۰۱۲۲۶۹۱ – کفاشان
(مدیر کانون شهید صیاد شیرازی، بسیج درگز)

🌹با تشکر از همراهی و همکاری شما عزیزان
سلام دوستان 👋

برای اینکه راحت‌تر بتوانید سوالات و تمرین‌های پایتون را مطرح کنید و تکالیف خود را انجام دهید، یک گروه ایجاد کرده‌ام.
در این گروه، علاوه بر تمرین‌ها، می‌توانید پاسخ‌ها و توضیحات مرتبط را هم دنبال کنید تا همیشه در جریان مباحث کلاس باشید.

با تشکر از همراهی شما 💻🐍
لینک گروه برنامه‌نویسی پایتون و هوش مصنوعی
👇👇👇

https://eitaa.com/joinchat/440141078C7ff6219056
سوالات و پاسخ‌های تشریحی درباره محیط IDE:

1. محیط IDE چیست و چه کاربردی دارد؟
پاسخ:
IDE (Integrated Development Environment) محیطی نرم‌افزاری است که ابزارهای مختلف برنامه‌نویسی مانند ویرایشگر کد، کامپایلر، دیباگر و مدیریت پروژه را در یکجا فراهم می‌کند تا برنامه‌نویسان بتوانند به راحتی کد بنویسند، اجرا کنند و خطاها را پیدا و رفع کنند.


2. نام و توضیح سه ویژگی مهم که یک IDE خوب باید داشته باشد را بنویسید.
پاسخ:

ویرایشگر کد پیشرفته با تکمیل خودکار (Auto-complete)

دیباگر (Debug) برای پیدا کردن و رفع خطاهای برنامه

مدیریت پروژه و فایل‌ها برای سازماندهی بهتر کدها



3. فرق بین اجرای برنامه در محیط IDE و اجرای برنامه به صورت خط فرمان چیست؟
پاسخ:
در IDE برنامه به صورت یکپارچه اجرا می‌شود و امکاناتی مثل نمایش خطاها، مشاهده متغیرها و دیباگ کردن به صورت ساده در دسترس است، ولی در خط فرمان فقط برنامه اجرا می‌شود و برای دیباگ یا مشاهده خطاها باید جداگانه اقدام کرد.


4. چگونه در محیط IDE می‌توان خطاهای برنامه را پیدا و رفع کرد؟
پاسخ:
IDE با نمایش پیغام خطا و محل دقیق آن در کد کمک می‌کند، همچنین با استفاده از دیباگر می‌توان اجرای برنامه را مرحله به مرحله دنبال کرد و متغیرها را بررسی کرد تا خطا رفع شود.


5. مزایای استفاده از تکمیل خودکار کد (Auto-complete) در IDE چیست؟
پاسخ:
تکمیل خودکار سرعت نوشتن کد را افزایش می‌دهد، اشتباهات تایپی را کاهش می‌دهد و باعث می‌شود برنامه‌نویس راحت‌تر و سریع‌تر به توابع و متغیرها دسترسی داشته باشد.


6. چگونه می‌توان در محیط IDE پروژه‌ای جدید ایجاد کرد و فایل‌های برنامه را مدیریت کرد؟
پاسخ:
معمولاً با گزینه «New Project» در منوی فایل می‌توان پروژه جدید ساخت. سپس با ساخت پوشه‌ها و فایل‌های جدید داخل پروژه، کدها را مرتب و سازماندهی کرد.


7. توضیح دهید که چگونه می‌توان از امکانات دیباگ (Debug) در IDE استفاده کرد و چرا این قابلیت مهم است؟
پاسخ:
با قرار دادن نقاط توقف (Breakpoint) در کد، می‌توان اجرای برنامه را متوقف کرد و متغیرها را بررسی کرد. این قابلیت کمک می‌کند خطاها و مشکلات منطقی برنامه به راحتی پیدا و رفع شوند.


8. نام چند IDE معروف برای برنامه‌نویسی به زبان پایتون را ذکر کنید و یکی از آنها را توضیح دهید.
پاسخ:
IDE های معروف شامل PyCharm، Visual Studio Code، Jupyter Notebook و Spyder هستند. به عنوان مثال، PyCharm محیطی قدرتمند با امکانات کامل برای نوشتن، دیباگ و مدیریت پروژه‌های پایتون است که توسط JetBrains توسعه یافته.


9. چگونه می‌توان در IDE افزونه (Plugin) نصب کرد و این افزونه‌ها چه کاربردی دارند؟
پاسخ:
معمولاً از طریق منوی تنظیمات یا Extensions می‌توان افزونه‌ها را جستجو و نصب کرد. افزونه‌ها امکانات اضافی مثل پشتیبانی از زبان‌های جدید، قالب‌بندی کد، ابزارهای دیباگ و غیره را به IDE اضافه می‌کنند.


10. چه امکاناتی در IDE به بهبود سرعت و دقت برنامه‌نویسی کمک می‌کند؟
پاسخ:
امکاناتی مثل تکمیل خودکار کد، قالب‌بندی خودکار، مدیریت پروژه، دیباگ آسان، نمایش خطاها به صورت لحظه‌ای، و قابلیت جستجو و جایگزینی سریع، همه به افزایش سرعت و دقت برنامه‌نویسی کمک می‌کنند.
🔥 دوستانی که دنبال حرفه‌ای شدن در پایتون هستن!
با شرکت در آزمون سطح خودتون رو محک بزنید و مسیر یادگیری‌تون رو بهتر بشناسید. 💪🐍
https://rubika.ir/py_plus22/BDHIJIGAJHACCIGE
1. پایتون چیست و چه کاربردهایی دارد؟
پایتون زبان برنامه‌نویسی سطح بالا، ساده و کاربردی است.


2. تفاوت متغیر و ثابت در پایتون چیست؟
متغیر مقدارش تغییر می‌کند، ثابت مقدارش ثابت است.


3. چگونه می‌توان یک متغیر عدد صحیح تعریف کرد؟
مثلا: x = 5


4. خروجی دستور print("Hello, World!") چیست؟
خروجی: Hello, World!


5. تفاوت بین list و tuple در پایتون چیست؟
لیست قابل تغییر است، تاپل غیرقابل تغییر.


6. چگونه یک لیست در پایتون تعریف می‌شود؟
مثلا: my_list = [1, 2, 3]


7. تفاوت عملگر == و = چیست؟
= برای اختصاص دادن مقدار، == برای مقایسه است.


8. چگونه یک حلقه for ساده در پایتون می‌نویسیم؟
مثال: for i in range(5): print(i)


9. چه نوع داده‌هایی در پایتون وجود دارد؟
عدد صحیح، اعشاری، رشته، لیست، دیکشنری، تاپل، بولین و غیره.


10. نحوه تعریف یک تابع ساده در پایتون چگونه است؟
مثال: def my_func(): pass


11. تفاوت بین if, elif, و else چیست؟
if شرط اول، elif شرط بعدی، else اگر هیچ کدام نبود.


12. چگونه می‌توان یک رشته (string) را به عدد تبدیل کرد؟
با int("123") تبدیل رشته به عدد.


13. کاربرد range() در حلقه‌های پایتون چیست؟
تولید دنباله‌ای از اعداد برای حلقه.


14. چگونه می‌توان یک عنصر را از یک لیست حذف کرد؟
با list.remove(element) یا del list[index]


15. معنای None در پایتون چیست؟
نمایانگر عدم وجود مقدار است.


16. چگونه می‌توان از کاربر ورودی گرفت؟
با input()


17. تفاوت بین متد append() و extend() در لیست‌ها چیست؟
append() یک عنصر اضافه می‌کند، extend() چند عنصر.


18. چه تفاوتی بین متغیرهای محلی و سراسری وجود دارد؟
محلی فقط داخل تابع است، سراسری در کل برنامه.


19. چگونه کامنت (توضیح) در پایتون نوشته می‌شود؟
با # در ابتدای خط.


20. معنای کلیدواژه return در یک تابع چیست؟
مقدار خروجی تابع را مشخص می‌کند.
با سلام و احترام
به اطلاع دوستانی که به‌تازگی به جمع ما پیوسته‌اند می‌رسانم که جلسات ابتدایی ممکن است اندکی دشوار به نظر برسد. ان‌شاءالله از جلسه آینده وارد بخش کدنویسی خواهیم شد و در آن مرحله، درک و علاقه‌مندی شما نسبت به برنامه‌نویسی پایتون افزایش چشمگیری خواهد داشت.
از دوستان تقاضا می‌شود حتی در صورت مواجهه با دشواری، در کلاس‌ها حضور مستمر داشته باشند تا مسیر یادگیری با همراهی یکدیگر هموارتر شود.
همچنین در صورت هرگونه ابهام یا سؤال، تیم آموزشی آماده‌ی پاسخ‌گویی و راهنمایی خواهد بود.

با آرزوی موفقیت برای همه عزیزان
دوستانی که درباره نصب پایتون روی سیستم نگرانی داشتند، خیالتان راحت باشد؛ یک فیلم کوتاه آموزشی تهیه شده و در کانال قرار می‌گیرد. بنابراین از این بابت جای نگرانی نیست.
💻📱همچنین خیلی از دوستان سیستم یا لپ‌تاپ دارند که می‌توانند به‌صورت دو یا سه نفره در جلسه استفاده کنند، پس برای این کلاس نیازی به خرید تجهیزات جدید نیست.

🌺امروز، خدا را شکر، تقریباً همه دوستان محیط رسمی IDLE را اجرا کردند و تجربه کار با آن برای بعضی‌ها بسیار امیدوارکننده بود. حتی برخی بچه‌ها روی گوشی امتحان کردند و دیدند که دنیای پایتون چقدر می‌تواند کاربردی و جذاب باشد.

با توکل به خدا و همراهی شما، روزهای خیلی خوبی در انتظار شما و آینده بچه‌های برنامه‌نویسی است. موفق باشید. 🌱
«دوستان عزیز و خبرنگاران پرتلاش که در جمع ما حضور دارید،
روز خبرنگار را از صمیم قلب تبریک می‌گویم.
شما که با تلاش و صداقت، حقایق را به گوش همگان می‌رسانید و چراغ راه مردم هستید، همیشه موفق و پایدار باشید.
امیدوارم صدای شما همیشه رساتر و تاثیرگذارتر باشد.
روزتان مبارک!»
با سلام و احترام خدمت دوستان گرامی،

📅 امروز، به لطف خداوند متعال، دومین جلسه دوره‌ی مقدماتی زبان برنامه‌نویسی پایتون در کانون شهید صیاد شیرازی با حضور پرشور و گرم برادران و خواهران برگزار شد. از استقبال شما عزیزان بی‌نهایت سپاسگزاریم و خوشحالیم که با شور و اشتیاق همراه ما بودید.

🕘 زمان برگزاری کلاس‌ها
با توجه به استقبال شما عزیزان، زمان کلاس‌ها تغییر کرده و برای راحتی بیشتر دوستان، به شرح زیر تنظیم شده است:

برادران: شنبه، دوشنبه و چهارشنبه، ساعت ۸:۴۵ تا ۱۰:۱۵ صبح

خواهران: شنبه، دوشنبه و چهارشنبه، ساعت ۱۰:۱۵ تا ۱۱:۴۵ صبح



📌 مدارک و ثبت‌نام
دوستانی که هنوز مشخصات و مدارک خود را تحویل نداده‌اند، لطفاً هرچه سریع‌تر مدارک خود را به آقای کفاشان تحویل دهند تا فرآیند ثبت‌نام تکمیل شود.
برای ثبت‌نام یا تحویل مدارک، لطفاً با شماره زیر تماس بگیرید:
📞 ۰۹۳۷۰۱۲۲۶۹۱ – آقای کفاشان
(مدیر کانون شهید صیاد شیرازی، بسیج درگز)

🌹 با تشکر از همکاری شما عزیزان،
منتظر دیدار دوباره‌ شما در جلسات بعدی هستیم.
اگر دنبال اپلیکیشن‌هایی شبیه Pydroid می‌گردی که بتونی روی گوشی اندرویدی پایتون بنویسی و اجرا کنی، این‌ها گزینه‌های خوب و محبوب هستن:

1. Pydroid 3

بهترین و محبوب‌ترین محیط برنامه‌نویسی پایتون برای اندروید

پشتیبانی از اجرای کد، نصب کتابخانه‌ها و حتی اجرا با رابط گرافیکی



2. QPython

محیط قدرتمند پایتون با امکانات مختلف مثل ویرایشگر کد، کنسول، و اجرای اسکریپت‌ها

پشتیبانی از پروژه‌های بزرگ‌تر



3. Termux

محیط ترمینال لینوکسی روی اندروید که می‌تونی پایتون رو نصب و ازش استفاده کنی

امکان اجرای هر اسکریپتی با استفاده از خط فرمان



4. Dcoder

ادیتور برنامه‌نویسی چند زبانه که پایتون هم پشتیبانی می‌کند

مناسب برای کدهای کوتاه و تست سریع



5. AIDE Python

محیط توسعه مخصوص اندروید که برای پایتون و جاوا مناسب است

مخصوص ساخت اپلیکیشن‌های موبایل
📌 کلاس‌های برنامه‌نویسی پایتون برای کودک و نوجوان

وقتشه که بچه‌ها دیگه فقط تماشاگر نباشن!
به جای ساعت‌ها صرف گوشی و تبلت، فرزند شما می‌تونه وارد دنیایی بشه که خودش خالق و سازنده است. دنیایی پر از خلاقیت، اعتمادبه‌نفس و مهارت‌هایی که آینده‌شون رو می‌سازه! 💫

توی عصر سرعت و پیشرفت تکنولوژی و هوش مصنوعی، فقط مصرف‌کننده بودن کافی نیست؛ باید یاد بگیریم چطور خالق باشیم و ایده‌هامون رو به واقعیت تبدیل کنیم.

🌱 دغدغه والدین رو درک می‌کنیم:
همه می‌دونن بچه‌ها چقدر وقتشون رو پای گوشی و تبلت می‌گذرونن، اما مهم‌تر از زمان، کیفیت استفاده‌ست.
آیا در این مدت یاد می‌گیرن؟ خلق می‌کنن؟ مهارت جدید پیدا می‌کنن؟
ما با ترکیب آموزش و بازی، محیطی فراهم کردیم که بچه‌ها هم سرگرم شن، هم مفاهیم برنامه‌نویسی و هوش مصنوعی رو اصولی یاد بگیرن.

🎯 در این کلاس‌ها بچه‌ها:

با اصول هوش مصنوعی آشنا می‌شن و یاد می‌گیرن چطور ازش برای ایده‌هاشون استفاده کنن

اولین کدها و برنامه‌هاشون رو می‌نویسن

از مصرف‌کننده به خالق و نوآور دیجیتال تبدیل می‌شن




🚀 برنامه‌نویسی مقدماتی پایتون – فرصت ثبت‌نام همین الان!
به فرزندتون یه دنیای جدید و هیجان‌انگیز هدیه بدید و مسیر موفقیت‌ش رو هموار کنید.
کلاس برنامه‌نویسی پایتون

👨‍🏫 مربی: یاسر محمودیان

📅 تاریخ برگزاری: ۲۲ مرداد ۱۴۰۴

ساعت:

۹:۰۰ تا ۱۰:۳۰ — برادران

۱۰:۳۰ تا ۱۲:۰۰ — خواهران


📍 مکان: کانون فرهنگی ورزشی شهید صیادشیرازی بسیج درگز
«هر راه بزرگی با قدمی کوچک آغاز می‌شود، و امروز همان قدم اول شماست.»


🌺با آرزوی موفقیت برای همه دوستان، ان‌شاءالله در جلسات آینده همگی با فرآیند نوشتن و ساختن پروژه‌ها بیشتر آشنا خواهند شد.
✨️یکی از مهم‌ترین الزامات، توجه، تمرکز و نوشتن کدهاست؛ زیرا این کار قدرت تحلیل و یادگیری شما را چند برابر می‌کند.
🔸️اینکه همچنان در مسیر یادگیری هستید، بسیار ارزشمند است. پیشنهاد می‌کنم حتما یک دفترچه یادداشت داشته باشید تا مطالب گفته‌شده را به شکل منظم، اولویت‌بندی‌شده و پایه‌ای ثبت کنید. این موارد، شالوده یادگیری برنامه‌نویسی پایتون را تشکیل می‌دهند.
سلام دوستان عزیز! 👋
یه فرصت عالی برای یادگیری و محک زدن مهارت‌های پایتون پیش اومده.
اگه وقت داری و دوست داری 💻برنامه‌نویسی رو بهتر بشناسی یا تمرین کنی، این آزمون ساده و جذاب رو از دست نده! 🎯

🔗 لینک آزمون:
https://rubika.ir/py_plus22/BDIAFHIIFFFGHIGE

💡 نگران سختی نباش! این آزمون برای همه سطح‌ها طراحی شده و هدفش کمک به یادگیری و افزایش اعتماد به نفس تو برنامه‌نویسیه.
حتی اگه تازه‌کاری، فقط کافیه با آرامش شروع کنی و به خودت فرصت بدی. 😊

بیاید با هم این چالش رو قبول کنیم و تجربه جدیدی کسب کنیم!
🌺منتظر موفقیت‌های شما هستم!
آموزش پایتون از صفر تا فصل رشته‌ها (۳۰۰ نکته)

۱–۱۰۰: مقدمات برنامه‌نویسی و مفاهیم پایه

1. برنامه چیست: مجموعه دستوراتی که کامپیوتر اجرا می‌کند.


2. برنامه‌نویسی چیست: هنر نوشتن برنامه‌ها برای انجام کارهای مشخص.


3. کد: دستورالعمل‌های قابل فهم برای کامپیوتر.


4. پردازش: اجرای کد و انجام عملیات.


5. RAM: حافظه موقت برای اجرای برنامه‌ها.


6. ROM: حافظه دائمی برای ذخیره سیستم عامل و داده‌ها.


7. سیستم: مجموعه‌ای از سخت‌افزار و نرم‌افزار برای اجرای برنامه‌ها.


8. گروه: دسته‌ای از داده‌ها یا کارها که با هم مرتبط‌اند.


9. CPU: واحد پردازش مرکزی، مغز کامپیوتر.


10. واحد حساب و منطق: بخشی از CPU که محاسبات و تصمیم‌گیری انجام می‌دهد.


11. ورودی: داده‌هایی که به کامپیوتر وارد می‌شوند.


12. خروجی: نتیجه پردازش داده‌ها.


13. الگوریتم: دستورالعمل گام‌به‌گام حل مسئله.


14. فلوچارت: نمودار بصری الگوریتم.


15. متغیر: محفظه‌ای برای ذخیره داده‌ها.


16. نوع داده عددی: integer و float.


17. نوع داده متنی: string.


18. نوع داده منطقی: boolean (True/False).


19. لیست: مجموعه‌ای مرتب از عناصر.


20. دیکشنری: مجموعه‌ای از جفت کلید-مقدار.


21. tuple: لیستی غیرقابل تغییر.


22. set: مجموعه‌ای بدون تکرار.


23. عملگر جمع: + برای جمع یا الحاق.


24. عملگر تفریق: - برای اعداد.


25. عملگر ضرب: * برای اعداد یا تکرار رشته.


26. عملگر تقسیم: / همیشه float می‌دهد.


27. عملگر تقسیم صحیح: // بدون اعشار.


28. عملگر باقیمانده: %.


29. عملگر توان: **.


30. عملگر مقایسه: ==, !=, <, >, <=, >=.


31. عملگر منطقی: and, or, not.


32. شرط if: اجرای کد بر اساس شرط.


33. شرط else: اجرای کد در صورت نادرستی شرط.


34. شرط elif: بررسی شرط دوم یا چندم.


35. حلقه for: تکرار برای تعداد مشخص یا لیست.


36. حلقه while: تکرار تا شرط برقرار باشد.


37. break: خروج از حلقه.


38. continue: عبور از تکرار فعلی و رفتن به بعدی.


39. pass: جایگزین کد موقت.


40. تابع: مجموعه‌ای از کدها با نام مشخص.


41. def: تعریف تابع.


42. return: خروجی تابع.


43. import: وارد کردن کتابخانه.


44. کتابخانه: مجموعه‌ای از توابع و کلاس‌ها.


45. math: کتابخانه ریاضی.


46. random: تولید اعداد تصادفی.


47. input(): دریافت داده از کاربر.


48. print(): نمایش داده روی صفحه.


49. type(): نمایش نوع داده.


50. len(): طول داده یا رشته.


51. str(): تبدیل به رشته.


52. int(): تبدیل به عدد صحیح.


53. float(): تبدیل به عدد اعشاری.


54. bool(): تبدیل به True/False.


55. list(): ساخت لیست.


56. dict(): ساخت دیکشنری.


57. tuple(): ساخت tuple.


58. set(): ساخت set.


59. slicing: برش داده یا رشته [start:end:step].


60. negative indexing: اندیس منفی از انتها.


61. enumerate(): گرفتن اندیس و مقدار همزمان.


62. zip(): ترکیب چند لیست.


63. comprehension: ایجاد لیست با یک خط کد.


64. شرط در comprehension: فیلتر کردن عناصر.


65. map(): اعمال تابع روی مجموعه‌ای از داده‌ها.


66. filter(): فیلتر داده‌ها با تابع.


67. lambda: تابع کوتاه بدون نام.


68. exception: خطا در زمان اجرا.


69. try: شروع بررسی خطا.


70. except: کد جایگزین در صورت خطا.


71. finally: اجرای کد همیشه.


72. raise: ایجاد خطا دستی.


73. assert: بررسی شرط و توقف در صورت نادرستی.


74. recursion: فراخوانی تابع خودش.


75. base case: شرط توقف recursion.


76. stack: ساختار داده LIFO.


77. queue: ساختار داده FIFO.


78. class: تعریف کلاس.


79. object: نمونه‌ای از کلاس.


80. init(): تابع سازنده کلاس.


81. self: ارجاع به خود شیء.


82. method: تابع داخل کلاس.


83. attribute: متغیر داخل کلاس.


84. inheritance: ارث‌بری کلاس‌ها.


85. override: بازنویسی متد کلاس والد.


86. encapsulation: پنهان‌سازی داده‌ها.


87. polymorphism: رفتار متفاوت یک تابع برای کلاس‌های مختلف.


88. module: فایل پایتون با توابع و کلاس‌ها.


89. package: مجموعه‌ای از ماژول‌ها.


90. sys: ماژول سیستم.


91. os: ماژول سیستم‌عامل.


92. path: مسیر فایل‌ها و دایرکتوری.


93. open(): باز کردن فایل.


94. read(): خواندن محتوا.


95. write(): نوشتن در فایل.


96. close(): بستن فایل.


97. with: مدیریت خودکار باز و بسته کردن فایل.


98. exception در فایل: مدیریت خطاهای فایل.


99. append(): اضافه کردن به فایل یا لیست.


100. split(): تبدیل رشته به لیست.




---

۱۰۱–۲۰۰: شروع پایتون و کار با داده‌ها

101. join(): تبدیل لیست به رشته.


102. strip(): حذف فاصله اضافی.


103. lstrip(): حذف فاصله از ابتدا.
104. rstrip(): حذف فاصله از انتها.


105. replace(): جایگزینی کاراکترها.


106. find(): پیدا کردن اندیس substring.


107. index(): مثل find اما خطا در صورت نبود substring.


108. upper(): حروف بزرگ.


109. lower(): حروف کوچک.


110. title(): بزرگ کردن حرف اول هر کلمه.


111. capitalize(): بزرگ کردن حرف اول رشته.


112. count(): تعداد وقوع substring.


113. startswith(): بررسی شروع رشته.


114. endswith(): بررسی پایان رشته.


115. isalpha(): همه حروف الفبا؟


116. isdigit(): همه عدد؟


117. isnumeric(): همه عدد؟


118. isspace(): همه فاصله یا تب؟


119. islower(): همه حروف کوچک؟


120. isupper(): همه حروف بزرگ؟


121. format(): جایگذاری متغیرها.


122. f-string: جایگذاری سریع متغیرها.


123. escape sequence: \n, \t, \\.


124. raw string: r"\".


125. slicing با step: انتخاب عناصر فاصله‌ای.


126. reverse string: s[::-1].


127. splitlines(): تقسیم چندخطی.


128. max() و min() برای رشته و لیست.


129. sum() برای اعداد در لیست.


130. abs() برای قدر مطلق.


131. round() برای گرد کردن اعشار.


132. pow(): توان.


133. divmod(): حاصل تقسیم و باقیمانده.


134. enumerate(): اندیس و مقدار.


135. zip(): ترکیب لیست‌ها.


136. any(): حداقل یک True.


137. all(): همه True.


138. map(): اعمال تابع روی لیست.


139. filter(): فیلتر لیست.


140. lambda: تابع کوتاه.


141. recursion: فراخوانی تابع خودش.


142. base case: شرط توقف recursion.


143. exception: خطاهای زمان اجرا.


144. try/except/finally.


145. raise: ایجاد خطا.


146. assert: بررسی شرط.


147. import: وارد کردن ماژول.


148. from … import …: وارد کردن موردی.


149. sys.argv: دریافت ورودی از خط فرمان.


150. help(): راهنمای توابع و ماژول‌ها.


151. dir(): نمایش متدها و attribute ها.


152. globals(): متغیرهای سراسری.


153. locals(): متغیرهای محلی.


154. callable(): بررسی تابع بودن.


155. isinstance(): بررسی نوع داده.


156. type(): نوع داده.


157. id(): شناسه داده در حافظه.


158. memoryview(): مشاهده داده‌ها در حافظه.


159. bytearray(): آرایه بایت قابل تغییر.


160. bytes(): آرایه بایت غیرقابل تغییر.


161. bin(): نمایش عدد در مبنای ۲.


162. oct(): نمایش عدد در مبنای ۸.


163. hex(): نمایش عدد در مبنای ۱۶.


164. ord(): عدد یونیکد کاراکتر.


165. chr(): کاراکتر از عدد یونیکد.


166. format() با قالب بندی عدد.


167. string.Template(): قالب بندی رشته‌ها.


168. re module: کار با regex.


169. match(), search(), findall(), sub() در regex.


170. slice object: ساخت برش سفارشی.


171. copy(): کپی شیء.


172. deepcopy(): کپی کامل شیء تو در تو.


173. id() برای بررسی مرجع.


174. str(): نمایش رشته‌ای کلاس.


175. repr(): نمایش رسمی کلاس.


176. len(): طول کلاس.


177. getitem(): دسترسی با [].


178. setitem(): اختصاص مقدار با [].


179. delitem(): حذف عنصر با [].


180. iter(): کلاس قابل حلقه؟


181. next(): گرفتن عنصر بعدی در حلقه.


182. generator: تولید دنباله با yield.


183. yield: تولید مقدار بدون توقف برنامه.


184. next(): گرفتن مقدار بعدی generator.


185. comprehension: ساخت سریع لیست، set، dict.


186. nested comprehension: لیست داخل لیست.


187. dictionary comprehension: ساخت سریع دیکشنری.


188. set comprehension: ساخت سریع set.


189. slicing در comprehension.


190. if شرطی در comprehension.


191. else شرطی در comprehension.


192. multiple for در comprehension.


193. unpacking: باز کردن tuple یا لیست.


194. *args: تعداد متغیر دلخواه.


195. **kwargs: تعداد متغیر دلخواه با نام.


196. positional arguments: آرگومان‌های موقعیتی.


197. keyword arguments: آرگومان‌های نامی.


198. default arguments: مقدار پیش‌فرض آرگومان.


199. mutable vs immutable: تغییرپذیری داده‌ها.


200. string، tuple، int: immutable؛ list، dict، set: mutable.




---

۲۰۱–۳۰۰: رشته‌ها، ترفندها و تمرین‌ها

201. concatenate با join در حلقه‌ها: بهینه‌تر از +.


202. تبدیل لیست به رشته با جداکننده دلخواه: ",".join(["a","b"]) → a,b.


203. تبدیل رشته به لیست کاراکترها: list("Hello") → ['H','e','l','l','o'].


204. حذف کاراکترها با replace در حلقه.


205. تبدیل رشته به حروف کوچک قبل پردازش.


206. تبدیل رشته به حروف بزرگ قبل پردازش.


207. استفاده از slicing برای حذف ابتدا یا انتها: s[1:-1].


208. برش رشته با گام منفی: برعکس کردن رشته.


209. چک کردن substring با in.
210. چک کردن عدم وجود substring با not in.


211. f-string با محاسبات: f"{2+3}" → 5.


212. f-string با فرمت عدد: f"{3.14159:.3f}" → 3.142.


213. چند خطی با f-string: f"""Line1 {var1}\nLine2 {var2}""".


214. نمایش صفر پیش‌رو: f"{5:03}" → 005.


215. چپ/راست/وسط‌چین در f-string: f"{x:^10}".


216. ترکیب f-string و متدها: f"{name.upper()}".


217. چاپ چند متغیر با فرمت یکسان: f"{x:5} {y:5}".


218. replace با تعداد مشخص: s.replace("a","b",2).


219. جایگزینی از ابتدا یا انتها با rreplace (کتابخانه‌ای).


220. index و find در حلقه برای یافتن چندین occurrence.


221. استفاده از split و join برای پاکسازی متن.


222. strip با چند کاراکتر: s.strip(" x\n").


223. پیدا کردن substring با حلقه و find.


224. چک کردن prefix و suffix قبل پردازش رشته.


225. تعداد حروف خاص با حلقه و شرط.


226. ایجاد رشته جدید با شرط روی کاراکترها.


227. تبدیل رشته به لیست کلمات با split.


228. برعکس کردن کلمات با slicing.


229. تبدیل حروف کوچک به بزرگ با map و lambda.


230. حذف کاراکترهای غیرمجاز با شرط و join.


231. شمارش چند substring همزمان.


232. چک کردن تمام کاراکترها با all().


233. چک کردن وجود حداقل یک کاراکتر با any().


234. حلقه روی لیست کاراکترها.


235. حلقه تو در تو برای بررسی چند شرط روی رشته‌ها.


236. TypeError: وقتی رشته + عدد بدون تبدیل.


237. IndexError: دسترسی به اندیس خارج از محدوده.


238. ValueError: تبدیل رشته غیرعددی به عدد.


239. AttributeError: استفاده از متد نامناسب روی رشته.


240. UnicodeError: مشکل در رمزگذاری متن.


241. KeyError در دیکشنری: هنگام استفاده از split برای ایجاد کلید.


242. OverflowError: در عملیات عددی مرتبط با رشته‌های عددی خیلی بزرگ.


243. encode(): تبدیل رشته به بایت.


244. decode(): تبدیل بایت به رشته.


245. utf-8 پیش‌فرض پایتون.


246. استفاده از escape برای کاراکترهای خاص.


247. نمایش کد یونیکد کاراکتر: ord().


248. تبدیل کد یونیکد به کاراکتر: chr().


249. رشته خام با r"" برای مسیرها.


250. Unicode normalization با unicodedata.normalize.


251. شمارش تعداد کلمات در متن.


252. تبدیل حروف کوچک و بزرگ متن.


253. حذف فاصله اضافی از متن.


254. جایگزینی کلمات خاص در متن.


255. برعکس کردن رشته.


256. برعکس کردن کلمات جمله.


257. چاپ تنها حروف یا اعداد متن.


258. چاپ کاراکترهای تکراری.


259. چاپ کاراکترهای غیرتکراری.


260. ایجاد حروف بزرگ اول هر کلمه.


261. ایجاد حروف کوچک اول هر کلمه.


262. شمارش تعداد حروف بزرگ و کوچک.


263. شمارش تعداد فاصله‌ها و تب‌ها.


264. برش متن از یک اندیس تا اندیس دیگر.


265. چاپ چند خط آخر متن.


266. رشته‌ها غیرقابل تغییرند، بنابراین همیشه یک رشته جدید می‌سازند.


267. ترکیب رشته‌ها در حلقه با + کند است، از join استفاده کنید.


268. برای بررسی substring از in بهتر از find است.


269. f-string سریع‌تر از format() است.


270. برای بزرگ و کوچک کردن متن سریع از str.upper/lower استفاده کنید.


271. برای حذف نویز متن از strip و replace استفاده کنید.


272. split و join ترکیبی برای پاکسازی متن کاربردی است.


273. استفاده از slicing برای انتخاب بخش خاص سریع است.


274. کار با رشته‌های چندخطی با splitlines راحت‌تر است.


275. f-string می‌تواند با محاسبات و توابع داخلی ترکیب شود.

276. برش و چاپ حروف زوج یک متن.

277. برش و چاپ حروف فرد یک متن.

278. شمارش تعداد occurrence یک کاراکتر در رشته با count().

279. جایگزینی چند substring همزمان با حلقه و replace.

280. شمارش تعداد کلمات با split و len.

281. شمارش تعداد حروف با حلقه و شرط.

282. پیدا کردن اندیس اولین occurrence با find.

283. پیدا کردن اندیس آخر occurrence با rfind.

284. بررسی اینکه رشته عددی است یا نه با isdigit.

285. بررسی اینکه رشته شامل حروف است یا نه با isalpha.

286. بررسی اینکه رشته فقط فاصله است یا نه با isspace.

287. تبدیل لیست حروف به رشته با join.

288. جدا کردن رشته با جداکننده دلخواه با split.

289. حذف فاصله‌های اضافی ابتدا و انتها با strip.

290. حذف فاصله‌های ابتدا با lstrip.


291. حذف فاصله‌های انتها با rstrip.


292. بزرگ کردن حرف اول رشته با capitalize.


293. بزرگ کردن حرف اول هر کلمه با title.


294. کوچک کردن کل رشته با lower.


295. بزرگ کردن کل رشته با upper.


296. پیدا کردن substring با in و not in.


297. ترکیب رشته‌ها با + یا join.


298. فرمت‌دهی رشته با format().


299. فرمت‌دهی سریع رشته با f-string.


300. نمایش متن چند خطی با triple quotes ("""text""").