ru
Feedback
🐍 Python & Raspberry 🐍

🐍 Python & Raspberry 🐍

Открыть в Telegram

Python- Raspberry Pi-AI-IOT ادمین : فرهاد ناصری زاده @farhad_naserizadeh @farhad3412 گروه پایتون @Python_QA تبادل @mmtahmasbi کانال مرتبط @new_mathematical @micropython_iot @c_micro اینستاگرام http://Instagram.com/python_raspberry

Больше
8 216
Подписчики
Нет данных24 часа
-177 дней
-8330 день
Архив постов
رهایی از دوراهی سخت؛ هم تنسورفلو، هم پایتورچ با IVY تا به حال احتمالا با چالش سخت انتخاب بین تنسورفلو و پای‌تورچ مواجه شده باشید. اخیرا با اضافه شدن Jax هم این انتخاب سخت‌تر شده. اما تیم unifyai یه فریم‌ورک جدید به نام IVY معرفی کرده که یک syntax یکپارچه برای توسعه مدل‌های دیپ داره و صرفا با تنظیم backend این پکیج روی هر یک از فریم‌ورک‌های تنسورفلو، پای‌تورچ و یا jax می‌تونید از عایدات همون ابزار بهره‌مند بشید. البته این فریم‌ورک در مسیر توسعه است و با توجه به عمر کوتاهش اما تعداد استار بسیار زیادی گرفته که نشون میده به نظر راه درستی رو داره میره. لینک گیت‌هاب: https://github.com/unifyai/ivy @raspberry_python

رهایی از دوراهی سخت؛ هم تنسورفلو، هم پایتورچ با IVY تا به حال احتمالا با چالش سخت انتخاب بین تنسورفلو و پای‌تورچ مواجه شده باشید. اخیرا با اضافه شدن Jax هم این انتخاب سخت‌تر شده. اما تیم unifyai یه فریم‌ورک جدید به نام IVY معرفی کرده که یک syntax یکپارچه برای توسعه مدل‌های دیپ داره و صرفا با تنظیم backend این پکیج روی هر یک از فریم‌ورک‌های تنسورفلو، پای‌تورچ و یا jax می‌تونید از عایدات همون ابزار بهره‌مند بشید. البته این فریم‌ورک در مسیر توسعه است و با توجه به عمر کوتاهش اما تعداد استار بسیار زیادی گرفته که نشون میده به نظر راه درستی رو داره میره. لینک گیت‌هاب: https://github.com/unifyai/ivy @raspberry_python

💻 دوره آنلاین «مهندسی داده و کلان داده» 🔥 نیاز روز بــــازار کــــار ایــــــران و خـــارج 📌 مخاطبان: 🔸 دانشجویان و فارغ
💻 دوره آنلاین «مهندسی داده و کلان داده» 🔥 نیاز روز بــــازار کــــار ایــــــران و خـــارج 📌 مخاطبان: 🔸 دانشجویان و فارغ التحصیلان تمامی رشته‌ها (به خصوص صنایع و کامپیوتر) 🔹 اعضای تیم داده در استارتاپ‌ها، سازمان‌ها و کسب و کارها 🔸 علاقمندان به پیشرفت در حوزه علم داده (Data Science) 🔹 جویندگان موقعیت‌های شغلی جذاب در حوزه #علم_داده 🏛 موسسه آموزش عالی آزاد توسعه ✅ با گواهینامه مورد تایید وزارت علوم، تحقیقات و فناوری 👈 مشاهده جزئیات دوره و مشاوره رایگان (کلیک کنید) 👁‍🗨 ➖➖

خب شاید پیش خودتون بگید، آبجکتی که داندر hash داشته باشه حتما hashable عه دیگه، این داندر رو داره و جوابتون این باشه: o = obj if hasattr(o, '__hash__'): print(f"{o} is hashable") اما خیر 😁 اول یه چیز پایه‌ای بگیم. کلاس آبجکت object پایه‌ای ترین base class در پایتونه و اینکه میگن همه‌چیز در پایتون آبجکته، یکی از دلیلاش اینه. هر چیزی که فکرش رو بکنید از object ارث می‌بره. این کلاس کلی داندر متد داره و از قضا دو تا داندر که در این مطلب برای ما مهم هستن رو هم با هم داره داندر eq -> برای چک کردن تساوی دو تا آبجکت
obj1 == obj2
داندر hash -> برای برگرداندن مقدار hash آبجکت که از تابع hash میگیریم
hash(obj)

وقتی یک کلاسی شما می‌نویسید:
class Spam:
    pass

این کلاس به طور خودکار از کلاس آبجکت ارث می‌بره که تبعا داندر متد‌ها براش resolve میشن، که یعنی، ارث‌‌شون میبره، یا اینکه میگرده توی کلاس object پیدا شون میکنه. نکته‌ی داندر eq رفتار پیش‌فرض داندر eq به این صورته که میان آیدی‌های دو آبجکت رو باهم مقایسه میکنه. یعنی اگه اون رو override نکرده باشید و بخواید آبجکت‌هاتون رو با هم مقایسه کنید، وقتی جواب True میگیرید که دو تا آبجکت در واقع یک آبجکت باشن. دقیقا همون کاری که is انجام میده.
s1 = s2 = Spam()
s1 == s2  -> True

اما شاید چنین رفتاری رو نخواید و جور دیگه‌ای بخوایید که آبجکت‌های شما تساوی‌شون چک بشه خب میاید داندر eq رو جوری که میخواید اورراید میکنید اما 😁 وقتی این کار رو کردید، اتفاقی که میوفته اینه که مقدار داندر hash شما None میشه و آبجکت شما دیگه hashable نیست این یعنی دیگه نمی‌تونید توی دیکشنری و ست بذاریدش و .... این در حالیه که آبجکت شما همچنان داندر hash داره ولی hashable نیست. این توضیحات میشن دلیل اینکه چرا اون شرط باگ داره. اما راه‌حل چیه؟ خب شاید بیاید بگید بجای اینکه چک کنیم هست، چک میکنیم که None نباشه
if o.__hash__ is not None:
    ...

این تا حدی مشکل رو حل میکنه اما از اونجایی که پایتون یه زبان به شدت داینامیک عه:
class Spam:
    def __eq__(self): ...

Spam.hash = "Gotcha, Im neither hashable nor None =)"

پس بهترین راه‌حل چیه؟ It is easier to ask forgiveness than permission
try:
    hash(o)
except TypeError:
    print("unhashable")
else:
    print("hashable")

اما یه سوال بی جواب میمونه! بالاتر گفتیم اگه داندر eq رو اورراید کنیم آبجکت ما دیگه hashable نیست و توی ست و دیکشنری نمی‌تونیم استفاده کنیم. من میخوام اون ور اورراید کنم و بازم hashable باشه 😒😒 خب جوابش ساده‌ست شما باید داندر hash رو هم اورراید کنید و یه مقدار int برگردونید نکته‌ای که هست و باید بهش توجه داشته باشید اینه که باید بتونید یه عددی تولید کنید که تکراری شدنش سخت باشه (اگه تکراری بشه اشکالی نداره) و به ویژگی‌های آبجکت شما وابسته هم باشه (حتما قرار نیست به ویژگی‌هاش وابسته باشه، اما اگه باشه، اون نکته‌ی قبلی راحت‌تر بدست میاد) برای مثال
class Spam:
    def __init__(self, name):
        self.name = name
    
    def __eq__(self):
        ...
    
    def __hash__(self):
        return hash(self.name)

تبعا شما اسامی مختلفی قراره به هر آبجکت که از Spam درست میکنید بدید، و این باعث میشه که hash هر بار فرق کنه اما اگه اسم یکسان هم بدید، مشکلی نیست یه قانونی هست توی بحث hash که میگه: اگر دو آبجکت دقیقا یکسان باشن، (یعنی دو تا رفرنس از یک آبجکت رو داشته باشیم) باید hash یکسانی داشته باشن اما اگر ما دو تا hash یکسان از دو تا آبجکت داشتیم، الزاما اون دو آبجکت یکی نیستن. به این حالت که هش یکسانه ولی آبجکتا یکی نیستن، میگن hash collision. که پایتون خودش این رو هندل میکنه و بحثش در این مقال "دیگر 😮‍💨" نمیگنجد. موفق باشید 😁✌️ #M4hdi 〰️〰️〰️〰️〰️〰️〰️ ©@raspberry_python

خب شاید پیش خودتون بگید، آبجکتی که داندر hash داشته باشه حتما hashable عه دیگه، این داندر رو داره و جوابتون این باشه: o = obj if hasattr(o, '__hash__'): print(f"{o} is hashable") اما خیر 😁 اول یه چیز پایه‌ای بگیم. کلاس آبجکت object پایه‌ای ترین base class در پایتونه و اینکه میگن همه‌چیز در پایتون آبجکته، یکی از دلیلاش اینه. هر چیزی که فکرش رو بکنید از object ارث می‌بره. این کلاس کلی داندر متد داره و از قضا دو تا داندر که در این مطلب برای ما مهم هستن رو هم با هم داره داندر eq -> برای چک کردن تساوی دو تا آبجکت
obj1 == obj2
داندر hash -> برای برگرداندن مقدار hash آبجکت که از تابع hash میگیریم
hash(obj)

وقتی یک کلاسی شما می‌نویسید:
class Spam:
    pass

این کلاس به طور خودکار از کلاس آبجکت ارث می‌بره که تبعا داندر متد‌ها براش resolve میشن، که یعنی، ارث‌‌شون میبره، یا اینکه میگرده توی کلاس object پیدا شون میکنه. نکته‌ی داندر eq رفتار پیش‌فرض داندر eq به این صورته که میان آیدی‌های دو آبجکت رو باهم مقایسه میکنه. یعنی اگه اون رو override نکرده باشید و بخواید آبجکت‌هاتون رو با هم مقایسه کنید، وقتی جواب True میگیرید که دو تا آبجکت در واقع یک آبجکت باشن. دقیقا همون کاری که is انجام میده.
s1 = s2 = Spam()
s1 == s2  -> True

اما شاید چنین رفتاری رو نخواید و جور دیگه‌ای بخوایید که آبجکت‌های شما تساوی‌شون چک بشه خب میاید داندر eq رو جوری که میخواید اورراید میکنید اما 😁 وقتی این کار رو کردید، اتفاقی که میوفته اینه که مقدار داندر hash شما None میشه و آبجکت شما دیگه hashable نیست این یعنی دیگه نمی‌تونید توی دیکشنری و ست بذاریدش و .... این در حالیه که آبجکت شما همچنان داندر hash داره ولی hashable نیست. این توضیحات میشن دلیل اینکه چرا اون شرط باگ داره. اما راه‌حل چیه؟ خب شاید بیاید بگید بجای اینکه چک کنیم هست، چک میکنیم که None نباشه
if o.__hash__ is not None:
    ...

این تا حدی مشکل رو حل میکنه اما از اونجایی که پایتون یه زبان به شدت داینامیک عه:
class Spam:
    def __eq__(self): ...

Spam.hash = "Gotcha, Im neither hashable nor None =)"

پس بهترین راه‌حل چیه؟ It is easier to ask forgiveness than permission
try:
    hash(o)
except TypeError:
    print("unhashable")
else:
    print("hashable")

اما یه سوال بی جواب میمونه! بالاتر گفتیم اگه داندر eq رو اورراید کنیم آبجکت ما دیگه hashable نیست و توی ست و دیکشنری نمی‌تونیم استفاده کنیم. من میخوام اون ور اورراید کنم و بازم hashable باشه 😒😒 خب جوابش ساده‌ست شما باید داندر hash رو هم اورراید کنید و یه مقدار int برگردونید نکته‌ای که هست و باید بهش توجه داشته باشید اینه که باید بتونید یه عددی تولید کنید که تکراری شدنش سخت باشه (اگه تکراری بشه اشکالی نداره) و به ویژگی‌های آبجکت شما وابسته هم باشه (حتما قرار نیست به ویژگی‌هاش وابسته باشه، اما اگه باشه، اون نکته‌ی قبلی راحت‌تر بدست میاد) برای مثال
class Spam:
    def __init__(self, name):
        self.name = name
    
    def __eq__(self):
        ...
    
    def __hash__(self):
        return hash(self.name)

تبعا شما اسامی مختلفی قراره به هر آبجکت که از Spam درست میکنید بدید، و این باعث میشه که hash هر بار فرق کنه اما اگه اسم یکسان هم بدید، مشکلی نیست یه قانونی هست توی بحث hash که میگه: اگر دو آبجکت دقیقا یکسان باشن، (یعنی دو تا رفرنس از یک آبجکت رو داشته باشیم) باید hash یکسانی داشته باشن اما اگر ما دو تا hash یکسان از دو تا آبجکت داشتیم، الزاما اون دو آبجکت یکی نیستن. به این حالت که هش یکسانه ولی آبجکتا یکی نیستن، میگن hash collision. که پایتون خودش این رو هندل میکنه و بحثش در این مقال "دیگر 😮‍💨" نمیگنجد. موفق باشید 😁✌️ #M4hdi 〰️〰️〰️〰️〰️〰️〰️ ©@raspberry_python

Advanced Machine Learning With Python @raspberry_python

Advanced Machine Learning With Python @raspberry_python

💻 دوره آموزشی «علـــــم داده (Data Science)» ✅ آموزش با نرم افزارها و زبــان‌های R، Python و SQL Server 🔥 نیاز روز بــــازا
💻 دوره آموزشی «علـــــم داده (Data Science)» ✅ آموزش با نرم افزارها و زبــان‌های R، Python و SQL Server 🔥 نیاز روز بــــازار کــــار ایــــــران و خـــارج مخاطبان دوره: 🔸 دانشجویان و فارغ‌التحصیلان کلیه رشته‌های تحصیلی 🔹 علاقمندان #علم_داده و تحلیلگری داده 🔸 کارشناسان و مدیران علوم داده 🔹 تحلیلگران کسب و کار 🔬 آموزش #آنلاین و با موردکاوی‎های واقعی و پروژه 🏛 موسسه آموزش عالی آزاد توسعه 📃 با گواهینامه مورد تایید وزارت علوم، تحقیقات و فناوری 👈 مشاهده جزئیات دوره و مشاوره رایگان (کلیک کنید) 👁‍🗨 ➖➖

کیت کامل رزبری پای ۴ شامل :(تمام قطعات نو هستند) یک عدد برد رزبری پای ۴ با رم ۲ گیگ مشخصات کاملش در عکس هست UK چینی نیست همرا
کیت کامل رزبری پای ۴ شامل :(تمام قطعات نو هستند) یک عدد برد رزبری پای ۴ با رم ۲ گیگ مشخصات کاملش در عکس هست UK چینی نیست همراه با لوازم زیر : یک عدد آداپتور اصلی Type c یک عدد کیس مخصوص طرح اپل یک عدد کابل رابط پاور مخصوص خاموش و روشن کردن بشکل دکمه ای هست یک عدد کابل HDMI یک عدد کابل برق Type c یک عدد حافظه 64 گیگ برند SanDisk یک عدد رمریدر SD card reader یک عدد فن مخصوص برد رزبری پای ارزش کل قطعات ۶ تومنی هست قیمت فروش ۵.۴۰۰

✔️ سوال. بهترین راه برای فهمیدن اینکه یه آبجکت hashable هست، چیه؟! جوابتون رو کامنت کنید. پاسخش رو فردا میگذارم. #M4hdi 〰️〰️〰️〰️〰️〰️ ©@raspberry_python

آکادمی همراه اول برگزار می‌کند: 🛎 دوره بین المللی آنلاین "اینترنت اشیاء در شهر هوشمند" 🔹 معرفی نفرات برتر به شرکت های وابست
آکادمی همراه اول برگزار می‌کند: 🛎 دوره بین المللی آنلاین "اینترنت اشیاء در شهر هوشمند" 🔹 معرفی نفرات برتر به شرکت های وابسته همراه اول جهت همکاری 🔸ارائه بیش از 50 مثال عملی 🔹آموزش کار با MIT APP 🔸همراه با پروژه های تخصصی 🎤 ارائه دهندگان: دکتر مهدی قیصری (هیئت علمی دانشگاه هاربین اینستیتو و تکنولوژی چین) دکتر آتا جهانگیر مشیدی (دانشیار دانشگاه جیانگشی چین) دکتر محمد فرجود (مدیرعامل سازمان فاوا هلدینگ بانک تجارت) 📆 تاریخ شروع برگزاری دوره: 5 مرداد ماه ۱۴۰۱ ⏳ مدت دوره: 34 ساعت آموزش شامل: 24 ساعت فیلم آموزشی ضبط‌شده + 6 ساعت پرسش و پاسخ آنلاین + 4 ساعت منتورینگ 🎁 30% هدیه ویژه ثبت نام زودهنگام با کد تخفیف: SMARTCITY (مهلت استفاده تا 31 تیر)➕ امکان قسط بندی هزینه دوره برای دانشجویان 🔗 مشاهده اطلاعات بیشتر و ثبت‌نام: 🌐 zaya.io/q1j91 ❓پاسخ به سوالات: (پاسخگویی به تماس تا ساعت 17) 🆔 @AcademyHamrah1 📞 09902032003

آکادمی همراه اول برگزار می‌کند: 🛎 دوره بین المللی آنلاین "اینترنت اشیاء در شهر هوشمند" 🔹 معرفی نفرات برتر به شرکت های وابست
آکادمی همراه اول برگزار می‌کند: 🛎 دوره بین المللی آنلاین "اینترنت اشیاء در شهر هوشمند" 🔹 معرفی نفرات برتر به شرکت های وابسته همراه اول جهت همکاری 🔸ارائه بیش از 50 مثال عملی 🔹آموزش کار با MIT APP 🔸همراه با پروژه های تخصصی 🎤 ارائه دهندگان: دکتر مهدی قیصری (هیئت علمی دانشگاه هاربین اینستیتو و تکنولوژی چین) دکتر آتا جهانگیر مشیدی (دانشیار دانشگاه جیانگشی چین) دکتر محمد فرجود (مدیرعامل سازمان فاوا هلدینگ بانک تجارت) 📆 تاریخ شروع برگزاری دوره: 5 مرداد ماه ۱۴۰۱ ⏳ مدت دوره: 34 ساعت آموزش شامل: 24 ساعت فیلم آموزشی ضبط‌شده + 6 ساعت پرسش و پاسخ آنلاین + 4 ساعت منتورینگ 🎁 30% هدیه ویژه ثبت نام زودهنگام با کد تخفیف: SMARTCITY (مهلت استفاده تا 31 تیر)➕ امکان قسط بندی هزینه دوره برای دانشجویان 🔗 مشاهده اطلاعات بیشتر و ثبت‌نام: 🌐 zaya.io/q1j91 ❓پاسخ به سوالات: (پاسخگویی به تماس تا ساعت 17) 🆔 @AcademyHamrah1 📞 09902032003

Organize Python code like a PRO 🐍📦 پروژه‌تون رو مثل یک حرفه‌ای ساختاربندی و مرتب کنید. از اونجایی که پایتون یک زبان خیلی من
Organize Python code like a PRO 🐍📦 پروژه‌تون رو مثل یک حرفه‌ای ساختاربندی و مرتب کنید. از اونجایی که پایتون یک زبان خیلی منعطف هست (مثل جاوا نیست که وقتی یه فایل جاوا درست میکنید باید یه کلاسِ پابلیک به همون اسم داخلش باشه) شما این اجازه رو دارید که کل کد یک پروژه رو توی یک فایل، و یا هر تابع رو توی یک فایل جدا بنویسید 😑🥴 با این مقاله یاد بگیرید که چگونه پروژه‌تون رو درست ساختار بندی کنید. https://guicommits.com/organize-python-code-like-a-pro/ 〰〰〰〰〰〰 ©@raspberry_python

Organize Python code like a PRO 🐍📦 پروژه‌تون رو مثل یک حرفه‌ای ساختاربندی و مرتب کنید. از اونجایی که پایتون یک زبان خیلی من
Organize Python code like a PRO 🐍📦 پروژه‌تون رو مثل یک حرفه‌ای ساختاربندی و مرتب کنید. از اونجایی که پایتون یک زبان خیلی منعطف هست (مثل جاوا نیست که وقتی یه فایل جاوا درست میکنید باید یه کلاسِ پابلیک به همون اسم داخلش باشه) شما این اجازه رو دارید که کل کد یک پروژه رو توی یک فایل، و یا هر تابع رو توی یک فایل جدا بنویسید 😑🥴 با این مقاله یاد بگیرید که چگونه پروژه‌تون رو درست ساختار بندی کنید. https://guicommits.com/organize-python-code-like-a-pro/ 〰〰〰〰〰〰 ©@raspberry_python

Repost from Persian python
سلام دوستان وقتتون بخیر ویدیو پلی لیست Pyqt6 آپلود شد قسمت : 38 موضوع : QML : Button & Handling Event - Call Function - Label - Row - Column امیدوارم که مفید بوده باشه میتونین از لینک زیر تماشا کنید https://youtu.be/USpO3Kvngjk فایل های این ویدیو در گیت هاب: https://github.com/persianpython/Pyqt6

✨ A modern and customizable python UIlibrary based on Tkinter
✨ A modern and customizable python UIlibrary based on Tkinter

Repost from N/a
آکادمی همراه اول برگزار می‌کند: 🛎 بوت کمپ آنلاین تابستانی پایتون و هوش مصنوعی ➕بدون نیاز به تجربه قبلی برنامه نویسی #پایتون
آکادمی همراه اول برگزار می‌کند: 🛎 بوت کمپ آنلاین تابستانی پایتون و هوش مصنوعی ➕بدون نیاز به تجربه قبلی برنامه نویسی #پایتون و دانش #هوش_مصنوعی ➕ حل تمرین و پرسش و پاسخ زنده هفتگی با مهندسین مجرب شرکت های حاضر در بوتکمپ ➕تجربه یادگیری مستقیم از طریق کدنویسی برای پروژه های واقعی از قلب شرکت های مطرح فناوری و هوش مصنوعی کشور ➕معرفی نفرات برتر به شرکت های حاضر در بوتکمپ برای #کارآموزی و #استخدام 🎤 مدرسین دوره: 🔸 دکتر هشام فیلی 🔹دکتر یدالله یعقوب زاده 🔸دکتر حسین زینلی 🔹دکتر رشاد حسینی 🔸دکتر عماد الدین فاطمی زاده 🔹 مهندس جمال کزازی 🏢 همکاران دوره: مرکز تحقیق و توسعه همراه اول شرکت هوش پارت شرکت سنسی‌فای ⏱ مدت دوره: بیش از 80 ساعت آموزش تئوری و کدنویسی 🔗 مشاهده اطلاعات بیشتر و ثبت‌نام: 🌐 zaya.io/4adog 🎖 امکان قسط بندی برای دانشجویان فراهم است 🎁 تخفیف 45 درصدی تا جمعه این هفته ❓پاسخ به سوالات: (پاسخگویی به تماس تا ساعت 17) 🆔 @AcademyHamrah1 📞 09902032003

🔰 11GB THE COLLECTION OF MOST VALUABLE & PREMIUM COURSES ABSOLUTELY FREE 🔰 Mix Categorized Courses of :- Python 3 C Program
🔰 11GB THE COLLECTION OF MOST VALUABLE & PREMIUM COURSES ABSOLUTELY FREE 🔰 Mix Categorized Courses of :- Python 3 C Programming C++ Graphics Design Software Testing JavaScript Vue.js Cyber Security Node.js Video Editing SEO Affiliate Marketing HTML CSS Django Laravel MySQL Database Wordpress Beginners Game Designing AR VR Java with OOP WordPress Theme Development Game Development Angular 8 React Digital Marketing Qt 5 C++ Data Structure and Algorithm Geometry 3D Animation Maya App Development Access from here