❔ فرق متود
هردوی این متود ها، مجیک متود هایی هستن که مشخص میکنن وقتی یک classیی قراره پرینت بشه، به چه صورتی باید پرینت بشه.
برای مثال:
✨ خب فرقشون کجاست؟
اگه از مجیک متود str استفاده کنین، فقط در صورتی کلاستون چیزی که میخواید نوشته میشه که مستقیم به str(x) داده بشه، یا مستقیم به print داده بشه.
این کد رو ببینید:
اخر کد رو دقت کردید؟ چرا چیزی که خواستیم پرینت نشد؟ یعنی [ "A: ILY" ]
چون مستقیم به print داده نشدن، اما وقتی از مجیک متود repr استفاده کنید، هرجای دنیا که کلاستون رو پرینت کنین، یا بزنین repr(x) یا بزنین str(x)، به چیزی که میخواید تبدیل میشه:
__str__ و __repr__ میدونین چیه؟هردوی این متود ها، مجیک متود هایی هستن که مشخص میکنن وقتی یک classیی قراره پرینت بشه، به چه صورتی باید پرینت بشه.
برای مثال:
class A:
def __repr__(self):
return "A: I love you"
a = A()
print(a)
# A: I love you
✨ خب فرقشون کجاست؟
اگه از مجیک متود str استفاده کنین، فقط در صورتی کلاستون چیزی که میخواید نوشته میشه که مستقیم به str(x) داده بشه، یا مستقیم به print داده بشه.
این کد رو ببینید:
class A:
def __str__(self):
return "A: ILY"
a = A()
print(a)
# A: ILY
text = str(a)
print(text)
# A: ILY
print( [ a ] )
# [<A at 0xisi83ijsiow837>]
اخر کد رو دقت کردید؟ چرا چیزی که خواستیم پرینت نشد؟ یعنی [ "A: ILY" ]
چون مستقیم به print داده نشدن، اما وقتی از مجیک متود repr استفاده کنید، هرجای دنیا که کلاستون رو پرینت کنین، یا بزنین repr(x) یا بزنین str(x)، به چیزی که میخواید تبدیل میشه:
class A:
def __repr__(self):
return "A: ILY"
a = A()
print(a)
# A: ILY
text = repr(a)
print(text)
# A: ILY
print( [ a ] )
# ["A: ILY"]
🔥9❤1
تبدیل یک سرگرمی، به پروژه ای بزرگ ...
سال ۱۹۹۱، Linus Torvalds، همزمان که دانشجوی علوم کامپیوتر بود، شروع میکنه توی اوقات فراغت خودش و برای سرگرمی خودش، پروژه ای به اسم Linux رو پیش میبره
تنها هدفشم اینه که با پردازنده ی جدید Intel، که اولین پردازنده x86 هست سازگاری داشته باشه تا بتونه با کامپیوتر جدیدش کار کنه
همونطور ک داخل کتابش نوشته: «این پروژه قرار نیست پروژه بزرگی باشه و فقط یک پروژه شخصیه، مثل gnu نخواهد شد.»
اول که سیستم رو میزنه و استفاده هاشو میکنه، به سرش میزنه از ساختار system-callsعه سیستمه Unix، الهام بگیره و روی Linux هم پیاده سازیش کنه
روی سیستم فقط bash و gcc رو میسازه، و به صورت اوپن سورس پخشش میکنه ...
حالا این Linux، بزرگترین و پراستفاده ترین سیستم در دنیاست ...
گوشیه توی دستتون، سیستم ضبط ماشین، ساعت مچی هوشمند، هزاران توزیععه مختلف ازش، سیستمه مدیریت ماشین های خفن، ابرکامپیوتر ها ...
همه و همه از هسته ی Linux استفاده میکنن ...
بنظرتون فکرش رو میکرد که سرگرمیش، همچین چیزی بشه؟🤔
اون فقط یک عادت کوچیک برای خودش خلق کرده بود «کد زدن روی پروژه های خودش در زمان فراغت» جای گشتن توی اکسپلور اینستا ( اونموقع ک اینستا نبود ولی خب، به در زدم دیوار بشنوه )
تازه اینم هست:
https://t.iss.one/CodingLovers_GP/98747
سال ۱۹۹۱، Linus Torvalds، همزمان که دانشجوی علوم کامپیوتر بود، شروع میکنه توی اوقات فراغت خودش و برای سرگرمی خودش، پروژه ای به اسم Linux رو پیش میبره
تنها هدفشم اینه که با پردازنده ی جدید Intel، که اولین پردازنده x86 هست سازگاری داشته باشه تا بتونه با کامپیوتر جدیدش کار کنه
همونطور ک داخل کتابش نوشته: «این پروژه قرار نیست پروژه بزرگی باشه و فقط یک پروژه شخصیه، مثل gnu نخواهد شد.»
اول که سیستم رو میزنه و استفاده هاشو میکنه، به سرش میزنه از ساختار system-callsعه سیستمه Unix، الهام بگیره و روی Linux هم پیاده سازیش کنه
روی سیستم فقط bash و gcc رو میسازه، و به صورت اوپن سورس پخشش میکنه ...
حالا این Linux، بزرگترین و پراستفاده ترین سیستم در دنیاست ...
گوشیه توی دستتون، سیستم ضبط ماشین، ساعت مچی هوشمند، هزاران توزیععه مختلف ازش، سیستمه مدیریت ماشین های خفن، ابرکامپیوتر ها ...
همه و همه از هسته ی Linux استفاده میکنن ...
بنظرتون فکرش رو میکرد که سرگرمیش، همچین چیزی بشه؟🤔
اون فقط یک عادت کوچیک برای خودش خلق کرده بود «کد زدن روی پروژه های خودش در زمان فراغت» جای گشتن توی اکسپلور اینستا ( اونموقع ک اینستا نبود ولی خب، به در زدم دیوار بشنوه )
تازه اینم هست:
https://t.iss.one/CodingLovers_GP/98747
❤8👍2
وقتشه از MySQL بریم سراغ PostgreSQL 🐘
دیتابیس PostgreSQL امروز نسخه ۱۷ خودش رو منتشر کرد، و پرفورمنس خودش رو حدودن ۳۰ درصد بهتر کرد، و کلی ابزار جدید با خودش اورد.
میتونم پیشنهاد کنم کوچ کنین به PostgreSQL ...
سایت رسمی
مقایسه نسخه ۱۶ و ۱۷
دیتابیس PostgreSQL امروز نسخه ۱۷ خودش رو منتشر کرد، و پرفورمنس خودش رو حدودن ۳۰ درصد بهتر کرد، و کلی ابزار جدید با خودش اورد.
میتونم پیشنهاد کنم کوچ کنین به PostgreSQL ...
سایت رسمی
مقایسه نسخه ۱۶ و ۱۷
❤6👍2
از کجا ایموجی انتخاب میکنی ❓
انتخاب کردن ایموجی مناسب واسه متن ها داخل پروژه ( مخصوصا ربات تلگرام )، واقعا کار سختیه، من از emojidb.org استفاده میکنم ...
داخل کامنت ها بگین شما از چی استفاده میکنین؟
انتخاب کردن ایموجی مناسب واسه متن ها داخل پروژه ( مخصوصا ربات تلگرام )، واقعا کار سختیه، من از emojidb.org استفاده میکنم ...
داخل کامنت ها بگین شما از چی استفاده میکنین؟
❤8
سلام چطورید، امروز با یه نکته مفید دیگه اومدم که ممکنه به کارتون بیاد
تا حالا به داک استرینگها توی پایتون توجه کردید؟ 🤔 داک استرینگها همون توضیحات کوتاه و مفیدی هستن که داخل تریپل کوتیشنها مینویسید و هدفشون اینه که عملکرد فانکشنها، کلاسها یا متغیرها رو توضیح بدن
مثال میزنم تا بهتر متوجه بشید:
وقتی از داک استرینگ استفاده میکنید، میتونید با فانکشن
اینطوری:
خروجیش اینه:
اینطوری میتونید کدتون رو برای دیگران قابل فهمتر کنید، و وقتی کسی از کدتون استفاده کرد، سریعاً بفهمه هر قسمت چیکار میکنه! 😎
مخلص 💜
تا حالا به داک استرینگها توی پایتون توجه کردید؟ 🤔 داک استرینگها همون توضیحات کوتاه و مفیدی هستن که داخل تریپل کوتیشنها مینویسید و هدفشون اینه که عملکرد فانکشنها، کلاسها یا متغیرها رو توضیح بدن
مثال میزنم تا بهتر متوجه بشید:
def add(a, b):
"""
این تابع دو عدد رو به هم اضافه میکنه.
:param a: عدد اول (int یا float)
:param b: عدد دوم (int یا float)
:return: حاصل جمع دو عدد
"""
return a + b
وقتی از داک استرینگ استفاده میکنید، میتونید با فانکشن
help() یا حتی __doc__ به راحتی مستندات کدتون رو ببینید.اینطوری:
print(help(add)) # نمایش مستندات
print(add.__doc__) # مستندات به صورت ساده
خروجیش اینه:
Help on function add in module __main__:
add(a, b)
این تابع دو عدد رو به هم اضافه میکنه.
:param a: عدد اول (int یا float)
:param b: عدد دوم (int یا float)
:return: حاصل جمع دو عدد
اینطوری میتونید کدتون رو برای دیگران قابل فهمتر کنید، و وقتی کسی از کدتون استفاده کرد، سریعاً بفهمه هر قسمت چیکار میکنه! 😎
مخلص 💜
❤9👍4🔥2
رفتم اخبار رو یه نگاه بندازم، خبری چیزی پیدا کنم پست بزارم
دیدم ویندوز چقدر خرابکاری کرده
از ۲۶ سپتامبر، تا امروز، حداقل ۹ تا خبر درباره این بود که «ویندوز فلان مشکل امنیتی را رفع کرد، «امنیت بیشتر را تجربه کنید.»»
دیدم ویندوز چقدر خرابکاری کرده
از ۲۶ سپتامبر، تا امروز، حداقل ۹ تا خبر درباره این بود که «ویندوز فلان مشکل امنیتی را رفع کرد، «امنیت بیشتر را تجربه کنید.»»
🤣15👍1😁1
فیچر های جدید تلگرام
⭐ با آپدیت جدید تلگرام اپلیکیشنها و وبسایتها میتوانند با پرداخت هزینه در fragment، کد تأیید را از طریق تلگرام ارسال کنند.
🎁 در بهروزرسانی جدید تلگرام هدیه بدهید. میتوانید با استفاده از استار، برای دیگران هدیه بفرستید. این هدیه میتواند پیام اختصاصی یا پیامهای متحرک باشد. دریافتکننده میتواند آن را در پروفایلش نمایش دهد یا آنها را به استار تبدیل کند.
⭐ با آپدیت جدید تلگرام اپلیکیشنها و وبسایتها میتوانند با پرداخت هزینه در fragment، کد تأیید را از طریق تلگرام ارسال کنند.
🎁 در بهروزرسانی جدید تلگرام هدیه بدهید. میتوانید با استفاده از استار، برای دیگران هدیه بفرستید. این هدیه میتواند پیام اختصاصی یا پیامهای متحرک باشد. دریافتکننده میتواند آن را در پروفایلش نمایش دهد یا آنها را به استار تبدیل کند.
4🔥6👍1
🔥 ببینم کی میتونه جواب بده ( این چالش شامل همه جز فرشاد میشه😂 )
دوتا کُد داریم. بگید کدوم از نظر تئوری رم کمتری مصرف میکنه.
پ.ن: اختلاف مصرف رمشون در حد چند بایته در اینجا، پس اصلا مهم نیست که کدومو استفاده کنید.
دوتا کُد داریم. بگید کدوم از نظر تئوری رم کمتری مصرف میکنه.
پ.ن: اختلاف مصرف رمشون در حد چند بایته در اینجا، پس اصلا مهم نیست که کدومو استفاده کنید.
import random
is_equal = random.randint(0, 10) == 10
# Code 1
print(
("Not Equal", "Equal")[is_equal]
)
# Code 2
print(
"Equal" if is_equal else "Not Equal"
)
🔥6👍1
❤6🤣3
🚀 بنظرتون کدوم سریع تره؟
# فرض کنین یه متن بزرگه این:
text = "Suppose this is a large text"
# Code 1
print( text.find("Hello") != -1 )
# Code 2
print( "Hello" in text )
❤1
🔥 آموزش کاربردی Enums در پایتون 🔥
آیا میدونستید که Enums میتونن کدهای شما رو مرتبتر و حرفهایتر کنن؟ 🤔
توی این ویدیو از یوتیوب، روش استفاده از Enums و مزایای اونها رو کامل توضیح دادم! از مدیریت مقادیر ثابت تا افزایش خوانایی کد... همه اینها رو یاد بگیرید و سطح برنامهنویسیتون رو ارتقا بدید! 🚀
🎥 ویدیو رو اینجا ببینید: [لینک ویدیو]
👨💻 این ویدیو برای همه کسانی که میخوان کدهای تمیزتر و سازماندهیشدهتری داشته باشن عالیه!
آیا میدونستید که Enums میتونن کدهای شما رو مرتبتر و حرفهایتر کنن؟ 🤔
توی این ویدیو از یوتیوب، روش استفاده از Enums و مزایای اونها رو کامل توضیح دادم! از مدیریت مقادیر ثابت تا افزایش خوانایی کد... همه اینها رو یاد بگیرید و سطح برنامهنویسیتون رو ارتقا بدید! 🚀
🎥 ویدیو رو اینجا ببینید: [لینک ویدیو]
👨💻 این ویدیو برای همه کسانی که میخوان کدهای تمیزتر و سازماندهیشدهتری داشته باشن عالیه!
❤8🔥2👍1
Coding Lovers
🔥 آموزش کاربردی Enums در پایتون 🔥 آیا میدونستید که Enums میتونن کدهای شما رو مرتبتر و حرفهایتر کنن؟ 🤔 توی این ویدیو از یوتیوب، روش استفاده از Enums و مزایای اونها رو کامل توضیح دادم! از مدیریت مقادیر ثابت تا افزایش خوانایی کد... همه اینها رو یاد بگیرید…
یک ماهی هست ویدیو نزاشتم ببخشید 💜
اگه دوست داشتید برید لایک و کامنت بزارید که الگوریتم یوتوب کمتر اذیتمون کنه
الانم بیرون بودم وقت نکردم خودم متن بنویسم دادم GPT، عجب توضیحاتی هم نوشت خدایی 😂❤️
عشقید
اگه دوست داشتید برید لایک و کامنت بزارید که الگوریتم یوتوب کمتر اذیتمون کنه
الانم بیرون بودم وقت نکردم خودم متن بنویسم دادم GPT، عجب توضیحاتی هم نوشت خدایی 😂❤️
عشقید
❤11
یا خدا انقلابی در تلگرام قراره باشه
اپدیت بشدت کوچیک و جزئی هستش
و قول میدم تاثیر خیلی بزرگی میزاره
قراره این قابلیت اضافه بشه که بعد از ارسال مسیج، به مسیجی که حتی مدیا هم نداره، مدیا اضافه کنی
اپدیت بشدت کوچیک و جزئی هستش
و قول میدم تاثیر خیلی بزرگی میزاره
قراره این قابلیت اضافه بشه که بعد از ارسال مسیج، به مسیجی که حتی مدیا هم نداره، مدیا اضافه کنی
👍14🔥6❤1
💥 درباره 3 تا از پراستفاده ترین دیتابیس ها به صورت خلاصه بدونیم:
▎MySQL
ایدهآل برای برنامههایی که به پرسوجوهای پیچیده، تراکنشها و یکپارچگی داده نیاز دارند. معمولاً در برنامههای وب، پلتفرمهای تجارت الکترونیک و سیستمهای مدیریت محتوا استفاده میشود.
به طور کلی برای عملیات خواندن سنگین خوب است. برای تراکنشها و پیوندها بهینهسازی شده است.
مقیاسپذیری عمودی رایج است (اضافه کردن منابع بیشتر به یک سرور واحد)، اما مقیاسپذیری افقی (شاردینگ) با برخی پیچیدگیها ممکن است.
دیتابیس MySQL معمولاً از حافظه برای کش کردن، بافر کردن و مدیریت اتصالات استفاده میکند. موتور ذخیرهسازی InnoDB (پیشفرض) از یک استخر بافر برای کش کردن دادهها و ایندکسها استفاده میکند که میتوان آن را بر اساس حافظه موجود سیستم پیکربندی کرد. MySQL به طور کلی در استفاده از حافظه کارآمد است، اما پیکربندی نادرست (مانند تعداد زیاد اتصالات یا اندازههای بافر ناکافی) میتواند منجر به مصرف بیش از حد حافظه شود.
▎MongoDB
بهترین گزینه برای برنامههایی با ساختارهای داده متغیر، تجزیه و تحلیل در زمان واقعی و دادههای کلان. معمولاً در مدیریت محتوا، برنامههای IoT و برنامههای موبایل کاربرد دارد.
عالی برای عملیات خواندن/نوشتن با حجم بالا و میتواند مجموعههای داده بزرگ را به طور مؤثر مدیریت کند. عملکرد ممکن است بر اساس استراتژیهای ایندکسگذاری متفاوت باشد.
از ابتدا برای مقیاسپذیری افقی (شاردینگ) طراحی شده است که توزیع دادهها در چندین سرور را آسانتر میکند.
دیتابیس MongoDB از حافظه برای کش کردن دادهها و ایندکسها در RAM استفاده میکند. این سیستم از رویکرد فایل نقشهبرداری شده در حافظه استفاده میکند، به این معنی که از ویژگیهای حافظه مجازی سیستم عامل برای مدیریت دادهها بهره میبرد.
موتور ذخیرهسازی WiredTiger (پیشفرض) از یک کش داخلی استفاده میکند که میتواند با پارامتر storage.wiredTiger.engineConfig.cacheSizeGB پیکربندی شود.
مصرف حافظه MongoDB ممکن است به دلیل ساختار مستند محور و نیاز به بارگذاری کل مستندات در حافظه برای عملیات بالاتر باشد. با این حال، این سیستم به طور مؤثر حافظه را برای برنامههای با توان خروجی بالا مدیریت میکند.
▎PostgreSQL
مناسب برای برنامههایی که به پرسوجوهای پیچیده و یکپارچگی داده نیاز دارند. معمولاً در سیستمهای مالی، برنامههای جغرافیایی و هر سناریویی که به روابط پیچیده داده نیاز دارد، استفاده میشود.
عملکرد عالی برای هر دو عملیات خواندن و نوشتن. از تکنیکهای پیشرفته ایندکسگذاری و بهینهسازی پرسوجو پشتیبانی میکند.
از هر دو مقیاسپذیری عمودی و افقی پشتیبانی میکند (با ابزارهایی مانند Citus برای شاردینگ).
دیتابیس PostgreSQL از چندین ناحیه حافظه استفاده میکند، از جمله بافرهای مشترک (برای کش کردن دادهها)، work_mem (برای مرتبسازی و جدولهای هش) و maintenance_work_mem (برای عملیات نگهداری مانند پاکسازی). PostgreSQL به خاطر استفاده کارآمد از حافظه شناخته شده است، به ویژه در پردازش پرسوجوهای پیچیده. با این حال، مانند MySQL، پیکربندی نادرست میتواند منجر به مصرف بیش از حد حافظه شود.
❓ شما کدوم دیتابیس رو توی پروژه هاتون انتخاب میکنید ( غیر از Sqlite ) ؟
پ.ن: از chatgpt پرسیدم، گفتم با شماهم به اشتراک بزارم.
▎MySQL
ایدهآل برای برنامههایی که به پرسوجوهای پیچیده، تراکنشها و یکپارچگی داده نیاز دارند. معمولاً در برنامههای وب، پلتفرمهای تجارت الکترونیک و سیستمهای مدیریت محتوا استفاده میشود.
به طور کلی برای عملیات خواندن سنگین خوب است. برای تراکنشها و پیوندها بهینهسازی شده است.
مقیاسپذیری عمودی رایج است (اضافه کردن منابع بیشتر به یک سرور واحد)، اما مقیاسپذیری افقی (شاردینگ) با برخی پیچیدگیها ممکن است.
دیتابیس MySQL معمولاً از حافظه برای کش کردن، بافر کردن و مدیریت اتصالات استفاده میکند. موتور ذخیرهسازی InnoDB (پیشفرض) از یک استخر بافر برای کش کردن دادهها و ایندکسها استفاده میکند که میتوان آن را بر اساس حافظه موجود سیستم پیکربندی کرد. MySQL به طور کلی در استفاده از حافظه کارآمد است، اما پیکربندی نادرست (مانند تعداد زیاد اتصالات یا اندازههای بافر ناکافی) میتواند منجر به مصرف بیش از حد حافظه شود.
▎MongoDB
بهترین گزینه برای برنامههایی با ساختارهای داده متغیر، تجزیه و تحلیل در زمان واقعی و دادههای کلان. معمولاً در مدیریت محتوا، برنامههای IoT و برنامههای موبایل کاربرد دارد.
عالی برای عملیات خواندن/نوشتن با حجم بالا و میتواند مجموعههای داده بزرگ را به طور مؤثر مدیریت کند. عملکرد ممکن است بر اساس استراتژیهای ایندکسگذاری متفاوت باشد.
از ابتدا برای مقیاسپذیری افقی (شاردینگ) طراحی شده است که توزیع دادهها در چندین سرور را آسانتر میکند.
دیتابیس MongoDB از حافظه برای کش کردن دادهها و ایندکسها در RAM استفاده میکند. این سیستم از رویکرد فایل نقشهبرداری شده در حافظه استفاده میکند، به این معنی که از ویژگیهای حافظه مجازی سیستم عامل برای مدیریت دادهها بهره میبرد.
موتور ذخیرهسازی WiredTiger (پیشفرض) از یک کش داخلی استفاده میکند که میتواند با پارامتر storage.wiredTiger.engineConfig.cacheSizeGB پیکربندی شود.
مصرف حافظه MongoDB ممکن است به دلیل ساختار مستند محور و نیاز به بارگذاری کل مستندات در حافظه برای عملیات بالاتر باشد. با این حال، این سیستم به طور مؤثر حافظه را برای برنامههای با توان خروجی بالا مدیریت میکند.
▎PostgreSQL
مناسب برای برنامههایی که به پرسوجوهای پیچیده و یکپارچگی داده نیاز دارند. معمولاً در سیستمهای مالی، برنامههای جغرافیایی و هر سناریویی که به روابط پیچیده داده نیاز دارد، استفاده میشود.
عملکرد عالی برای هر دو عملیات خواندن و نوشتن. از تکنیکهای پیشرفته ایندکسگذاری و بهینهسازی پرسوجو پشتیبانی میکند.
از هر دو مقیاسپذیری عمودی و افقی پشتیبانی میکند (با ابزارهایی مانند Citus برای شاردینگ).
دیتابیس PostgreSQL از چندین ناحیه حافظه استفاده میکند، از جمله بافرهای مشترک (برای کش کردن دادهها)، work_mem (برای مرتبسازی و جدولهای هش) و maintenance_work_mem (برای عملیات نگهداری مانند پاکسازی). PostgreSQL به خاطر استفاده کارآمد از حافظه شناخته شده است، به ویژه در پردازش پرسوجوهای پیچیده. با این حال، مانند MySQL، پیکربندی نادرست میتواند منجر به مصرف بیش از حد حافظه شود.
❓ شما کدوم دیتابیس رو توی پروژه هاتون انتخاب میکنید ( غیر از Sqlite ) ؟
پ.ن: از chatgpt پرسیدم، گفتم با شماهم به اشتراک بزارم.
❤8🔥2