10327
برای موفق شدن 🌱 با این عبارت خداحافظی کن: "باشه فردا"🍃 💻 برای دسترسی راحت تر به مطالب به "لیست پین شده" برو🙃 👩💻 Support: @narges_madhi 🪧 ads: @teachifyads 💁♀️ instagram : instagram.com/teachify_ir
✔️ مهم ترین شورتکات های VS Code
➖➖➖➖➖➖
💻 @kaliboys | کالی بویز
Fix it !
#fun #فان
💻 @Teachify | برنامه نویسی
✔️ فک کن یه بک اند کار بخواد تو یکی از این div ها یه تغییری ایجاد کنه :)) پدرش درمیاد و اخرشم نمیتونه😂
#fun #فان
💻@Teachify | برنامه نویسی
⌨️ معرفی تم های جذاب VSCode
🎨 Winter is Coming Theme
🎨 Tokyo Night
🎨 One Dark Pro
🎨 Darcula Theme
🎨 Dracula Official
🎨 SynthWave
▪️روش نصب تم در وی اس کد:
1. ابتدا وارد VSCode شوید.
2. در سمت چپ، روی گزینه Extensions کلیک کنید (آیکون چهار مربع).
3. در منوی باز شده، یک قسمت برای تایپ در بالای صفحه وجود دارد.
4. عنوان تم مورد نظر را در آنجا تایپ کنید (عناوین تمها در همین پست آمدهاند).
5. در لیست نمایش داده شده، روی تم مورد نظر کلیک کرده و سپس روی Install بزنید.
6. پس از نصب، منوی تمها باز میشود و میتوانید تم را انتخاب و تنظیم کنید.
امیدوارم از این تمها استفاده کنید و لذت ببرید.
💻 @Teachify | برنامه نویسی
⌨️ امروز میخوام چند کتابخونه عالی برای ساخت رابط کاربری (UI) با پایتون رو معرفی کنم. هر کدوم از این کتابخونهها ویژگیهای خاص خودشون رو دارن و میتونن تو پروژههای مختلف بهتون کمک کنن.
1⃣ Tkinter:
سادهترین و معروفترین کتابخونه برای ساخت رابط کاربری در پایتون. از قبل در پایتون موجوده و نیاز به نصب جداگانه نداره. مناسب برای پروژههای کوچیک و متوسط.
🔢 PyQt:
یه کتابخونه قویتر و پیچیدهتر که امکان ساخت رابطهای کاربری پیشرفتهتر و زیباتر رو فراهم میکنه. یادگیریش کمی سختتره و باید ابتدا Qt رو نصب کنی.
🔢 Kivy:
عالی برای زمانی که میخوای برنامهت روی موبایل هم اجرا بشه. خیلی انعطافپذیره و مناسب برای اپلیکیشنهای چندپلتفرمی و تعاملی.
🔢 wxPython:
یه کتابخونه قدرتمند برای ساخت رابطهای کاربری ویندوزی. شبیه به PyQt ولی برای بعضی کاربران ممکنه سادهتر باشه.
🔢 Dear PyGui:
یه گزینه جدید و مدرن که خیلی سریع و کار کردن باهاش آسونه. مناسب برای بازیها و اپلیکیشنهای گرافیکی.
هر کدوم از این کتابخونهها میتونن بهتون کمک کنن تا رابطهای کاربری جذاب و کارآمدی بسازید. انتخاب با شماست که کدوم رو بر اساس نیازتون استفاده کنید!
❤️@Teachify | برنامه نویسی
✔️ تصویری که برای ثبت کردنش، فیلمبردار drone خودش رو فدا کرد!
❤️@Teachify | برنامه نویسی
📱طرف ۲۲ سال تو مایکروسافت کار کرده و بعدش بار و بساطش رو جمع کرده و رفته یه مزرعه پرورش غاز زده و از دنیای تکنولوژی و متعلقاتش خداحافظی کرده.
بازنشستگی به این میگن
❤️@Teachify |IranCoderz
✔️ کامنتهایی که کارآموز توی پروژه میذاره:
#fun #فان
❤️@Teachify | برنامه نویسی
⌨️ آشنایی با JSON در پایتون
سلام دوستان! امروز میخوایم دربارهی یکی از پرکاربردترین فرمتهای تبادل داده، یعنی JSON، و نحوهی استفاده از اون در پایتون صحبت کنیم.
🔹جیسون (JSON) چیست؟
جیسون JSON (JavaScript Object Notation) یک فرمت سبک و استاندارد برای تبادل دادههاست که به راحتی توسط انسانها قابل خواندن و نوشتن است و به راحتی توسط ماشینها قابل تجزیه و تحلیل است. JSON معمولاً برای ارسال و دریافت دادهها بین سرورها و کلاینتها استفاده میشود.
🔹 دیتا تایپهای JSON:
1. آبجکت (Object): مشابه دیکشنری در پایتون.
{
"name": "Ali",
"age": 30
}
["apple", "banana", "cherry"]
"Hello, World!"
123
45.67
true
false
null
json استفاده کنید. دو تابع اصلی در این ماژول وجود داره: json.dumps() برای تبدیل یک آبجکت پایتون به رشته JSON و json.loads() برای تبدیل رشته JSON به یک آبجکت پایتون.import json
data = {
"name": "Ali",
"age": 30,
"is_student": False
}
json_data = json.dumps(data)
print(json_data) # خروجی: {"name": "Ali", "age": 30, "is_student": false}
import json
json_data = '{"name": "Ali", "age": 30, "is_student": false}'
data = json.loads(json_data)
print(data) # خروجی: {'name': 'Ali', 'age': 30, 'is_student': False}
✔️ وقتی یه فرانت کار میخواد رمز strong انتخاب کنه :))
#fun #فان
💻@Teachify | برنامه نویسی
✔️ انتقال #تجربه ...
من یه موس دارم که از سال 1392 که لپ تاپم رو گرفتم همراهش بود و من باهاش خیلی احساس راحتی میکنم.
اخیرا اسکرولش دیگه کار نمیکرد و این منو خیلی اذیت میکرد و به فکر یه موس دیگه بودم ...
امروز تصمیم گرفتم بازش کنم که نتیجه این شد🥹
الان باور کنید از روز اول هم روون تر شده :))
💻@Teachify | برنامه نویسی
✔️ اورلودینگ (Overloading) در برنامه نویسی
اورلودینگ در برنامهنویسی شیءگرا به معنای تعریف چندین نسخه از یک تابع با نام یکسان ولی پارامترهای مختلف است. این ویژگی به ما اجازه میدهد تا توابعی با نام مشابه ولی با رفتارهای متفاوت بسته به ورودیهایشان داشته باشیم.
در پایتون، اورلودینگ به دو شکل میتواند اتفاق بیافتد: اورلودینگ متدها و اورلودینگ عملگرها. هر کدام از این موارد را به تفصیل توضیح میدهم.
1. اورلودینگ متدها
پایتون به طور پیشفرض از اورلودینگ متدها پشتیبانی نمیکند مانند زبانهایی مثل جاوا یا سیپلاسپلاس. اما میتوان با استفاده از تکنیکهایی این قابلیت را شبیهسازی کرد. معمولاً با بررسی تعداد و نوع پارامترهای ورودی درون یک متد، میتوان رفتارهای مختلفی را پیادهسازی کرد.
مثال:
class MathOperations:
def add(self, a, b, c=None):
if c is not None:
return a + b + c
else:
return a + b
math_op = MathOperations()
print(math_op.add(1, 2)) # خروجی: 3
print(math_op.add(1, 2, 3)) # خروجی: 6
class Vector:
def init(self, x, y):
self.x = x
self.y = y
def add(self, other):
return Vector(self.x + other.x, self.y + other.y)
def str(self):
return f"({self.x}, {self.y})"
v1 = Vector(2, 3)
v2 = Vector(5, 7)
v3 = v1 + v2
print(v3) # خروجی: (7, 10)
📢 تپ سواپ قراره ۲۵ روز دیگه توی بایننس لیست بشه، اگه نات کوین نداشتی میتونی اینو استارک کنی!
📎 لینک ربات:
➡️ @Tapswap
🔥 ادد لیست کانال های ربات برای گرفتن جایزه و طی کردن مراحلش:
/channel/addlist/QC-qrEqfb2U1MmU0
➖➖➖➖➖➖
💻 @kaliboys | کالی بویز
✔️ وبسایت هایی برای نمونه سوالات و تمرینات پایتون
1⃣ LeetCode:
https://leetcode.com/
🔢 HackerRank:
https://www.hackerrank.com/domains/tutorials/10-days-of-python
🔢 Codewars:
https://www.codewars.com/
🔢 Exercism
https://exercism.io/tracks/python/exercises
🔢 GeeksforGeeks:
https://www.geeksforgeeks.org/python-programming-language/
🔢 Project Euler:
https://projecteuler.net/
💻 @Teachify | برنامه نویسی
✔️ این میتونه تابع بازگشتی باشه 😂
#فان #fun
💻 @Teachify | rezadolati
🔥 سرور ابری ویراک
✔️ ۳۰۰ هزار تومان شارژ بیشتر برای هر یک میلیون تومان واریزی
✔️ تا ۹۸۰Mbps پهنای باند
✔️ ترافیک یک به یک
🔔 هر ۱۰ روز یه تخفیف جذاب دریافت کن
👇👇
🌎 Panel.virakcloud.com
مشاوره تلفنی:
☎️ ۰۲۱۹۱۵۵۵۵۳۰
➖➖➖➖➖
📱 اگه برای نوشتن README تو گیتهاب مشکل دارید، این وبسایت عالی میتونه کمکتون کنه
readme.so
#گیتهاب #github
💻@Teachify | برنامه نویسی
⌨️ توابع لامبدا در پایتون – نحوه استفاده از لامبدا با Map، Filter و Reduce
در این آموزش، جنبههای مختلف توابع لامبدا در پایتون، از جمله نحو، موارد استفاده و محدودیتهای آنها را بررسی خواهیم کرد. با درک نحوه استفاده موثر از توابع لامبدا، می توانید کد پایتون مختصر و کارآمدتری بنویسید. استفاده از این توابع مهارت های برنامه نویسی شما را افزایش داده و کدهای شما را تمیزتر و مدیریت آن را آسان تر می کند.
🌐 در کالی بویز بخوانید: توابع لامبدا در پایتون
#lambda #python #پایتون #لامبدا
💻 @Kaliboys | کالی بویز
✔️ SOLID چیه و چه کاربردی داره؟
SOLID مجموعهای از اصول طراحی شیءگرا است که توسط Robert C. Martin معرفی شده و به توسعهدهندگان کمک میکند تا کدهای قابل فهم، قابل نگهداری و انعطافپذیر بنویسند. این اصول شامل پنج بخش اصلی است:
1⃣ اصل مسئولیت یکتا (SRP): هر کلاس باید تنها یک وظیفه مشخص داشته باشد.
🔢 اصل باز/بسته (OCP): کلاسها باید برای توسعه باز و برای تغییر بسته باشند.
🔢 اصل جایگزینی لیسکوف (LSP): کلاسهای فرزند باید بتوانند جایگزین کلاسهای والد خود شوند بدون اینکه رفتار برنامه مختل شود.
🔢 اصل جداسازی اینترفیس (ISP): اینترفیسها باید کوچک و اختصاصی باشند.
🔢 اصل وارونگی وابستگی (DIP): ماژولهای سطح بالا نباید به ماژولهای سطح پایین وابسته باشند، هر دو باید به آبسترکشنها وابسته باشند.
▪️مزایای اصول SOLID:
✔️ کاهش پیچیدگی کد
✔️ افزایش قابلیت نگهداری
✔️ تسهیل در تستپذیری
✔️ بهبود قابلیت توسعه
▪️ابزارها و فریمورکهای مفید:
- Spring (جاوا)
- Angular (وب)
- Django (پایتون)
شرکتهای بزرگی مثل گوگل و فیسبوک از اصول SOLID برای مدیریت پروژههای بزرگ خود استفاده میکنند.
➖➖➖➖➖➖
💻 @Teachify | برنامه نویسی
📱 دورک برای پیدا کردن اطلاعات از GitHub
#دورک به معنای استفاده از جستجوهای خاص برای پیدا کردن اطلاعاتی است که به طور عمومی در دسترس نیستند. این ابزار و کلمات کلیدی به شما کمک میکنند تا فایلها و اطلاعات حساس را در #گیتهاب پیدا کنید.
❤️@Teachify | برنامه نویسی
⌨️ مفهوم عبارت زیر در پایتون چیست؟ if __name__ == '__main__':
این عبارت یک بلوک کد را مشخص میکند که فقط زمانی که فایل به طور مستقیم به عنوان یک اسکریپت اجرا میشود، اجرا میشود. این عبارت از یک متغیر خاص به نام __name__ استفاده میکند که مقدار آن بستگی به نحوه اجرای فایل دارد:
✔️اگر فایل به طور مستقیم به عنوان یک اسکریپت اجرا شود: مقدار __name__ برابر با '__main__' خواهد بود.
✔️اگر فایل به عنوان یک ماژول توسط یک اسکریپت دیگر import شود: مقدار __name__ برابر با نام آن ماژول خواهد بود.
با استفاده از این بررسی، میتوانید کدی را بنویسید که فقط زمانی که اسکریپت اجرا میشود اجرا شود، نه زمانی که به عنوان یک ماژول import میشود.
در اینجا یک مثال از نحوه استفاده از عبارت if __name__ == '__main__': آورده شده است:
def main():
print("این کد فقط زمانی که اسکریپت به طور مستقیم اجرا میشود اجرا میشود.")
if __name__ == '__main__':
main()
main() فقط زمانی که اسکریپت به طور مستقیم اجرا میشود چاپ میشود. اگر این اسکریپت به عنوان یک ماژول import شود، تابع main() اجرا نمیشود.
✔️ عبارت "Artificial Intelligence" از کجا آمد؟
جان مک کارتی در سال 1956 میلادی (1335 شمسی) اصطلاح "هوش مصنوعی" را ابداع کرد و زبان برنامه نویسی LISP را توسعه داد که به ابزار استاندارد تحقیقات هوش مصنوعی تبدیل شد.
❤️@Teachify | برنامه نویسی
✔️ موقع تبدیل داده های جیسون به پایتون و برعکس دیتاتایپ ها به این صورت تغییر پیدا میکنند.
❤️@Teachify | برنامه نویسی
✔️ اگه دنبال یه راه جذاب برای تقویت مهارتهای کدنویسی هستین، مخزن "App Ideas" توی گیتهاب رو از دست ندین!
این مخزن پر از ایدههای متنوع برای ساخت اپلیکیشنهای مختلفه، از مبتدی تا پیشرفته. هر پروژه با توضیحات کامل، اهداف و منابع مرتبط ارائه شده.
شما میتونید پروژههایی مثل ساختن یه اپ مدیریت وظایف، یه بازی ساده، یا حتی یه شبکه اجتماعی کوچیک رو اینجا پیدا کنید.
مخزن "App Ideas" عالیه برای کسایی که میخوان مهارتهاشون رو تقویت کنن، چیزهای جدید یاد بگیرن و نمونهکارهای جذاب به رزومهشون اضافه کنن.
📎 https://github.com/florinpop17/app-ideas
🆔 @Teachify | برنامه نویسی
✔️ انواع مختلف پایگاهدادهها (Databases)
1. پایگاهدادههای رابطهای (Relational Databases)
- مثالها: MySQL, PostgreSQL, Oracle, SQL Server
2. پایگاهدادههای NoSQL
- انواع مهم:
- پایگاهدادههای کلید-مقدار (Key-Value Stores)
- مثالها: Redis, DynamoDB
- پایگاهدادههای سندگرا (Document Stores)
- مثالها: MongoDB, CouchDB
- پایگاهدادههای ستون-محور (Column-Family Stores)
- مثالها: Cassandra, HBase
- پایگاهدادههای نموداری (Graph Databases)
- مثالها: Neo4j, ArangoDB
3. پایگاهدادههای مبتنی بر حافظه (In-Memory Databases)
- مثالها: Redis, Memcached
4. پایگاهدادههای شیگرا (Object-Oriented Databases)
- مثالها: db4o, ObjectDB
5. پایگاهدادههای توزیعی (Distributed Databases)
- مثالها: Apache Cassandra, CockroachDB
6. پایگاهدادههای مبتنی بر زمان (Time-Series Databases)
- مثالها: InfluxDB, TimescaleDB
7. پایگاهدادههای چندمدلی (Multi-Model Databases)
- مثالها: ArangoDB, OrientDB
هر یک از این انواع پایگاهدادهها دارای ویژگیها و کاربردهای خاصی هستند که آنها را برای برخی از پروژهها و نیازها مناسبتر میکند.
💻@Teachify | برنامه نویسی
✔️ کاربرد yield در پایتون
کلمه کلیدی yield در پایتون برای ساخت توابع ژنراتور (generator functions) استفاده میشود. توابع ژنراتور نوع خاصی از توابع هستند که به جای بازگرداندن یک مجموعه مقادیر به طور کامل، مقادیر را به صورت یکی در میان و به صورت تنبل (lazy) تولید میکنند.
این قابلیت مزایای متعددی را به همراه دارد، از جمله:
▪️مصرف حافظه کمتر: توابع ژنراتور فقط مقدار مورد نیاز را در هر بار فراخوانی تولید میکنند، نه کل مجموعه را به طور کامل. این امر آنها را برای کار با مجموعه دادههای بزرگ یا نامحدود ایدهآل میکند.
▪️سادگی بیشتر: توابع ژنراتور را میتوان به روشی ساده و مختصر نوشت، بدون نیاز به مدیریت حافظه پیچیده.
▪️قابلیت ترکیب: توابع ژنراتور را میتوان به راحتی با سایر توابع و اشیاء ژنراتور ترکیب کرد، که آنها را برای ساخت خطوط لوله داده قدرتمند مفید میکند.
عملکرد yield به این صورت است که درون یک تابع ژنراتور، از کلمه کلیدی yield برای ارسال مقادیر به بیرون از تابع استفاده میشود. هر بار که yield فراخوانی میشود، تابع ژنراتور متوقف میشود و مقدار بعدی را ذخیره میکند.
هنگامی که از تابع ژنراتور با استفاده از یک حلقه for استفاده میشود، مقادیر ذخیره شده به ترتیب یکی پس از دیگری بازگردانده میشوند.
در اینجا چند نمونه از کاربردهای رایج yield در پایتون آورده شده است:
✔️ایجاد توابع شمارش: توابع ژنراتور میتوانند برای ایجاد توابع شمارش ساده یا پیچیده استفاده شوند، مانند توابعی که اعداد زوج، اعداد فیبوناچی یا اعداد اول را تولید میکنند.
✔️خواندن و پردازش فایلهای بزرگ: توابع ژنراتور میتوانند برای خواندن و پردازش فایلهای بزرگ به صورت خط به خط بدون نیاز به بارگذاری کل فایل در حافظه استفاده شوند.
✔️ایجاد خطوط لوله داده: توابع ژنراتور میتوانند با سایر توابع و اشیاء ژنراتور برای ایجاد خطوط لوله داده قدرتمند برای پردازش دادهها به روشی کارآمد ترکیب شوند.
➖➖➖➖➖➖
💻 @Teachify | برنامه نویسی
✔️ مفهوم پلیمورفیسم یا چند ریختی در پایتون
در #پایتون، پلیمورفیسم (Polymorphism) یکی از اصول اصلی برنامهنویسی شیءگرا (Object-Oriented Programming) است که به معنای "چند ریختی" میباشد. پلیمورفیسم این امکان را میدهد که اشیاء مختلف بتوانند از طریق یک رابط یکسان استفاده شوند، حتی اگر این اشیاء از کلاسهای متفاوتی باشند.
به طور خلاصه، پلیمورفیسم به این معنی است که یک متد یا تابع میتواند بر روی اشیاء مختلفی از کلاسهای متفاوت عمل کند و بسته به نوع شیء، رفتار متفاوتی را اجرا کند. این قابلیت به کمک وراثت (Inheritance) و متدهای مشترک بین کلاسها محقق میشود.
مثال سادهای از پلیمورفیسم در پایتون:
class Cow:
def sound(self):
return "Moow"
class Cat:
def sound(self):
return "Meow"
def make_sound(animal):
return animal.sound()
cow = Cow()
cat = Cat()
print(make_sound(cow)) # خروجی: Moow
print(make_sound(cat)) # خروجی: Meow
Cow و Cat هر دو متدی به نام sound دارند. تابع make_sound میتواند هر شیءای که دارای متد sound است را بپذیرد و متد مربوطه را فراخوانی کند. به این ترتیب، بدون اینکه نوع دقیق شیء را بدانیم، میتوانیم از یک رابط یکسان برای دسترسی به متدها استفاده کنیم. این قابلیت انعطافپذیری کد را افزایش میدهد و امکان توسعه و نگهداری آن را آسانتر میکند.
✔️ دیتابیس ردیس چیست؟
ردیس (Redis) یک دیتابیس NoSQL متنباز و رایگان است که بر اساس مدل ذخیرهسازی کلید-مقدار (key-value) عمل میکند. این دیتابیس از انواع مختلفی از دادهها مانند رشتهها (string)، هشها (hash)، لیستها (list)، مجموعهها (set)، و مجموعههای مرتب (sorted set) پشتیبانی میکند. ردیس دادهها را به صورت درونحافظهای (in-memory) ذخیره میکند که این ویژگی باعث افزایش چشمگیر سرعت خواندن و نوشتن اطلاعات میشود. اگرچه ردیس بیشتر به عنوان حافظه نهان (cache) مورد استفاده قرار میگیرد، اما میتوان از آن به عنوان دیتابیس اصلی یا کارگزار پیام (message broker) نیز بهره برد.
❤️ @Teachify | برنامه نویسی
✔️ تشخیص عدد زوج یا فرد در سطح باینری
▪️روش اول: بررسی بیت واحد: بیت کمارزش (بیت راستترین) عدد باینری را بررسی کنید.
اگر این بیت 0 باشد، عدد زوج است و اگر این بیت 1 باشد، عدد فرد است.
مثال:
✔️عدد باینری 1010: بیت کمارزش 0 است، بنابراین عدد زوج است.
✔️عدد باینری 1101: بیت کمارزش 1 است، بنابراین عدد فرد است.
▪️روش دوم: انجام عمل AND با 1: عدد باینری را با 1 (به صورت باینری) عمل AND کنید.
اگر نتیجه 0 باشد، عدد زوج است و اگر نتیجه 1 باشد، عدد فرد است.
مثال روش دوم در تصویر.
💻 @Teachify | برنامه نویسی
#ترفند
✔️ در فایل requirements.txt گاهی اوقات از -r به همراه یک URL استفاده میشود تا به طور تکراری نیازمندیهای یک پروژه دیگر را در فایل خود نصب کنید. این کار میتواند برای جلوگیری از تکرار لیستهای بلند نیازمندیها و مدیریت وابستگیها به طور کارآمدتر مفید باشد.
نحوه عملکرد:
1. زمانی که pip دستور -r را همراه با URL دریافت میکند، به آن URL میرود و محتوای فایل requirements.txt موجود در آن آدرس را دانلود میکند.
2. سپس، pip تمام نیازمندیهای لیست شده در فایل دانلود شده را به همراه نیازمندیهای موجود در فایل requirements.txt خودتان نصب میکند.
مثال:
فرض کنید دو پروژه به نام project-a و project-b دارید. project-b به تعدادی از کتابخانهها که در project-a نیز استفاده میشوند، نیاز دارد. به جای لیست کردن تمام این کتابخانهها دوباره در project-b`، میتوانید از -r` برای نصب آنها از project-a استفاده کنید:
# project-b/requirements.txt
-r project-a/requirements.txt
# Additional project-b specific requirements
- other-library-1
- other-library-2