جنگولرن
4.1K subscribers
306 photos
85 videos
33 files
595 links
آموزش Django و بستگان
-مفاهیم پر کاربرد پایتون
-مفاهیم مهندسی نرم افزار
-آشنایی با تجربه حرفه ای ها
-آشنایی با راهکارهای حرفه ای ها برای افزایش پرفورمنس
و...

جهت تبلیغ دایرکت کانال پیام بدید. پست 24 ساعته یک میلیون تومن.
Download Telegram
Audio
ویس مصاحبه با صفا صفری، محقق امنیت

صفا تازگی ها طلای مسابقات ملی مهارت رو گرفته و در حال تمرین برای مسابقات جهانی هست.

مصاحبه توی هنرستان شهید دبیریان، منطقه 16 تهران به صورت آنلاین برگزار شد

این بار سوالات بچه هارو حذف نکردم و اتفاقا گفتگو قشنگی شد.

لینک ویدئو:
https://www.aparat.com/v/fnh1y35

تشکر از صفا
🔥104
جنگولرن
اینارو ببین: کد اول: def f1(a): print(a) print(b) f1(10) کد دوم: b = 6 def f2(a): print(a) print(b) b = 9 f2(10) اگه میگی هر دو خطا میخورن 👍 اگه میگی فقط اولی خطا 👎 اگه میگی فقط دومی خطا 🤔 از کتاب Fluent Python
نظر فنی یکی از دوستان در مورد این پست (به نظر ایشون دانستن این مفاهیم مهمه):

قانون LEGB یکم سو تفاهم هست درش. بعضیا فکر میکنن این قانون داره میگه اگه local نبود پس میره enclosing رو "میگرده"،‌اگه نبود میره global رو "میگرده" تا پیدا کنه و انتظار دارن مثال دوم کار بکنه و اولین b رو از global بیاره و بعد که تعریف شد تو local اگه بازم b رو خواستیم از local بیاره حالا. در صورتی که چنین چیزی نیست در حالت کلی(اخرش تو پرانتز گفتم). ما باید bytecode تولید شده رو ببینیم و بعد بگیم چه رفتاری داره. یعنی میشد که اونجوری هم پیاده سازی بشه ولی efficient نیست اصلا حالا جلوتر میگم چرا.

اسکوپ متغیر ها در زمان compile مشخص میشه نه runtime و این قانون داره اولویت ها رو مشخص میکنه که تو "compile time" چطور resolve بشن. وقتی کامپایلر یه assignment میبینه داخل فانکشن، اون متغیر رو mark میکنه که local هست و تو runtime وقتی شما اون متغیر رو بخواید "فقط" توی namespace عه local دنبالش میگرده اگه بود میاره اگه نبود error میده.
متغیر ها توی global توی یک دیکشنری ذخیره میشن، ولی توی local توی آرایه هستن خیلی سریعتر هستن چون با ایندکس بهش دسترسی پیدا میکنید نه دیکشنری lookup. یعنی جاش مشخصه اصلا کجاست تو آرایه. اونتو یا متغیر هست که میاره یا نیست که میگه:
UnboundLocalError: cannot access local variable 'b' where it is not associated with a value
وقتی اون آرایه رو گشت و نبود دیگه گشتن رو متوقف میکنه و پروسه تموم میشه برای این efficient تره. یا وقتی mark شد که global هست دیگه نمیاد اول local رو بگرده ببینه نیست بعد بره تازه global رو بگرده.

بایت کد های یک فانکشن رو بدون ران کردنش نگاه کنید میبینید LOAD_FAST و LOAD_GLOBAL داره. LOAD_FAST منظورش local variable هست که با index عه اون یکی هم اسمش مشخصه.

(من یه ذره موقع توضیح دادن تغییر دادم نحوه ی سرچ کردن متغیر رو رو چون شامل حال سوال شما نمیشه و توضیحاتی که دادم اینجا درسته، ولی یه جاهایی هم هست که واقعا "گشتن" داریم که سر builtin که مثلا تو LOAD_GLOBAL سرچ میشه یا LOAD_NAME که سرچ میکنه چند تا name space رو میگرده تا پیدا کنه. سر local و enclosing هیچوقت اینطوری نیست)

تشکر از سروش که همیشه دقیق کمک میکنه ❤️
👍73
Forwarded from TondTech (مسعود بیگی)
یه وقت نیاد که دیر بشه..
👍11👏3😁1
Forwarded from Milad Hatami
Media is too big
VIEW IN TELEGRAM
⭕️💢کافه جنگو💢⭕️

آموزش جنگو پایتون
جلسه : پنجم
موضوع این جلسه: ادامه کار با مدل های وبلاگ و آشنایی با ORM جنگو

رشته: فنی پایه 11 کتب جدید

پایه: 11 فنی و 11 و 12 کاردانش

درس: وب

سطح: متوسط

مدرس: مهندس حاتمی

🔻🔻🔻🔻🔻🔻

#کافه_دانش
#کافه_جنگو
#جلسه_5
#سطح_متوسط_پیشرفته
#توسعه_وب
#یادگیری_مفاهیم_وب
#دبیرخانه_کشوری_رایانه
#مستقر_در_استان_زنجان
#کانال_شاد_دبیرخانه_رایانه
@Yvt_computer
#کافه_دانش
t.iss.one/Zncd_ir_Cafe
#آدرس_سایت_دبیرخانه_رایانه
ZNCD.ir
1👍1
جنگولرن
⭕️💢کافه جنگو💢⭕️ آموزش جنگو پایتون جلسه : پنجم موضوع این جلسه: ادامه کار با مدل های وبلاگ و آشنایی با ORM جنگو رشته: فنی پایه 11 کتب جدید پایه: 11 فنی و 11 و 12 کاردانش درس: وب سطح: متوسط مدرس: مهندس حاتمی 🔻🔻🔻🔻🔻🔻 #کافه_دانش #کافه_جنگو #جلسه_5 #سطح_متوسط_پیشرفته…
جلسه 5 کلاس جنگو برای هنرستان
بر مبنای کتاب Django 5 By Example

توی این ویدئو که برای همکاران هنرستانی برگزار شد، مدل post رو یکم تغییر دادیم.
به پست، فیلد status رو اضافه کردیم و بعدش بین مدل user و post ارتباط یک به چند برقرار کردیم.
سپس با استفاده از orm جنگو کوئری های مختلفی زدیم و نتیجه رو توی خروجی وبلاگ مشاهده کردیم.
توی این دوره قراره بر اساس کتاب Django 5 By Example پیش بریم. ولی مفاهیمی فراتر از کتاب رو قطعا پوشش خواهیم داد.
تمرکز این دوره بر پرسش و پاسخ خواهد بود. که بتونیم به همکاران راهنمایی بدیم.

لینک ویدئو در آپارات:
https://www.aparat.com/v/fcas62b
1
قابلیت Password-based authentication در جنگو

عکس رو ببین.
وقتی میخوای یوزر توی پنل ادمین بسازی (در حالت پیشفرض منظورم هست)
میتونی اینو فعال یا غیرفعال کنی.

مشخص میکنی که کاربر با پسورد لاگین کنه یا نه (مثلا فقط بتونه با کد یکبار مصرف لاگین کنه، غیرفعالش میکنی یا...)

این تنظیم از جنگو 5.1 اضافه شده.

اما اینو ننوشتم که بگم عجب فیچر خاصی، به نظرم زیادم خاص نیست.

میخوام شمارو دعوت کنم به pr یی که براش ثبت شده و مکالمه هایی که رد و بدل شده، تا ایده اولیه، این شده (به تاریخ pr و تاریخ merge دقت کن)

این لینک:
https://github.com/django/django/pull/16942

راستی، فارسی ش کار نمیکنه ظاهرا، تا دیر نشده فارسی ش رو pr بده 😁
🔥7