برنامه نویسی | Teachify
11.7K subscribers
1.03K photos
420 videos
231 files
654 links
برای موفق شدن 🌱 با این عبارت خداحافظی کن: "باشه فردا"🍃


Admin: @Yousef_Vafaei
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
✔️ این دیگه اخرشه 😂😂

#fun
@Teachify | برنامه نویسی
🤣25👍1
✔️ یادگیری کد vs فراموش کردن کد!

#fun
@Teachify | برنامه نویسی
😭33👍8👎1
✔️ یک مثال برای مدیریت خطا در پایتون

مدیریت خطا بخش مهمی از برنامه نویسی است که به شما امکان می دهد با خطاها و مشکلات غیر منتظره ای که در حین اجرای برنامه شما رخ می دهد، برخورد کنید. در پایتون، از کلمات کلیدی try، except، else و finally برای مدیریت خطا استفاده می شود.

کلمه کلیدی try بلوکی از کد را مشخص می کند که ممکن است خطایی ایجاد کند.

کلمه کلیدی except برای مشخص کردن نوع خطایی که می خواهید catch کنید و کدی که می خواهید در صورت وقوع آن خطا اجرا شود، استفاده می شود.

کلمه کلیدی else برای اجرای کدی در صورتی که هیچ خطایی در بلوک try رخ ندهد، استفاده می شود.

کلمه کلیدی finally برای اجرای کدی صرف نظر از اینکه خطایی رخ داده باشد یا خیر، استفاده می شود.
try:
age = int(input("سن خود را وارد کنید: "))
if age < 18:
raise ValueError("شما باید حداقل 18 سال سن داشته باشید.")
print(f"شما {age} سال سن دارید.")
except ValueError as e:
print(f"خطا: {e}")
except Exception as e:
print(f"خطای غیرمنتظره: {e}")
finally:
print("برنامه به پایان رسید.")

در این مثال، کد داخل بلوک try سعی می کند سن کاربر را به عنوان یک عدد صحیح دریافت کند. اگر سن کاربر کمتر از 18 سال باشد، یک ValueError ایجاد می شود. اگر هر خطای دیگری رخ دهد، یک Exception ایجاد می شود. کد داخل بلوک except پیام خطای مناسب را چاپ می کند. کد داخل بلوک finally صرف نظر از اینکه خطایی رخ داده باشد یا خیر، اجرا می شود.
@Teachify | برنامه نویسی
👍14
وقتی موقع وارد کردن پسورد جوگیر میشی :))

#fun
@Teachify | برنامه نویسی
🤣35👍5
✔️ یه برنامه نویس واقعی هیچ جا کدها و کارش رو ول نمیکنه :))

#fun
@Teachify | برنامه نویسی
🤣35😍2
✔️ خطا ها در زبان پایتون

▪️در زبان پایتون، خطاها به دو دسته تقسیم می‌شوند: خطاهای معمولی (Exceptions) و خطاهای زمان اجرا (Runtime Errors). اینجا چند خطا اصلی همراه با معانیشان آمده است:

1. خطای (SyntaxError): زمانی رخ می‌دهد که کد نوشته شده با قواعد زبان پایتون مغایرت داشته باشد.

2. خطای فاصله گذاری (IndentationError): وقتی فاصله‌گذاری در کد ناقص یا نادرست باشد.

3. خطای (NameError): وقتی یک نام متغیر یا فراخوانی وجود نداشته باشد.

4. خطای (TypeError): وقتی عملیاتی روی نوع اشیاء نامناسب باشد.

5. خطای (IndexError): وقتی شاخصی برای دسترسی به یک عنصر در یک لیست یا رشته وجود نداشته باشد.

6. خطای (ValueError): زمانی اتفاق می‌افتد که یک عملیات با یک مقدار نامناسب انجام شود.

7. خطای (KeyError): وقتی یک کلید در یک دیکشنری وجود نداشته باشد.

8. خطای (FileNotFoundError): وقتی یک پرونده مورد نظر برای عملیات فایل مورد نظر پیدا نشود.

9. خطای (ModuleNotFoundError): وقتی یک ماژولی که قرار استفاده شود پیدا نشود.

10. خطای (ZeroDivisionError): وقتی تلاش برای تقسیم عددی بر صفر انجام شود.
@Teachify | برنامه نویسی
👍8
This media is not supported in your browser
VIEW IN TELEGRAM
✔️ این دیگه چه سمی بود :))))

معلم: بهترین راه برای یادگیری یک زبان صحبت با فردی بومی است.

کسی که داره پایتون یاد میگیره:
#fun
@Teachify | برنامه نویسی
🤣25👍2
✔️ موضوع Monkey Patching در پایتون چیست؟

پایتون یک زبان برنامه‌نویسی پویاست و این یعنی میشه رفتار کد رو حین اجرا تغییر داد. Monkey Patching یه تکنیکیه که بهمون اجازه میده تا کلاس‌ها و ماژول‌ها رو حین اجرا تغییر بدیم.

مثل اینکه بخواهیم تو کار یه ماشین دستکاری کنیم وقتی که داره کار میکنه!

به مثال زیر دقت کنید:

class monkey:
def patch(self):
print("patch() is being called")

def monk_p(self):
print("monk_p() is being called")

# جایگزین کردن patch با monk_p
monkey.patch = monk_p

obj = monkey()

obj.patch() # monk_p() is being called

تو این مثال یه کلاس monkey با یه متد patch ساختیم. یه تابع دیگه هم به اسم monk_p بیرون از کلاس تعریف کردیم. حالا با جایگزین کردن monkey.patch با monk_p تونستیم رفتار patch رو تغییر بدیم.

جالبه که وقتی یه آبجکت از کلاس monkey درست میکنیم و متد patch رو صدا می‌زنیم، خروجی monk_p رو می بینیم. این یعنی با Monkey Patching تونستیم رفتار کد رو حین اجرا تغییر بدیم.
@Teachify | برنامه نویسی
👍6👌1
✔️ مثال #پایتون
کدی بنویسید که بتونه اعداد مربع کامل رو تشخیص بده؟
مثلا اگه اسم تابع ما valid_square باشه:

valid_square(10)
# False
valid_square(36)
# True

حتما قبل از دیدن جواب خودتون تلاش کنید.
جواب به زودی در کامنت

@Teachify | برنامه نویسی
✔️ عبارت with در پایتون برای چی استفاده میشه؟

عبارت with تو پایتون برای مدیریت استثنا (exception handling) و تمیزتر کردن کد به کار میره. معمولا ازش برای کنترل منابع رایج مثل ساختن، ویرایش و ذخیره کردن فایل استفاده میشه.

فرض کنید میخواین یه فایل متنی بسازین و توش بنویسین. بجای اینکه چند خط کد برای باز کردن فایل، بلاک try-except-finally و بستن فایل بنویسین، میتونین با یه خط از عبارت with این کار رو انجام بدین. خیلی ساده است!

مثال:

# با with statement
with open('myfile.txt', 'w') as file:
file.write('DataCamp Black Friday Sale!!!')


تو این مثال، با استفاده از with یه فایل به اسم myfile.txt رو باز کردیم و حالت اون رو روی نوشتن (w) قرار دادیم. بعدش با file.write یه متن داخلش نوشتیم.

نکته مهم اینه که بعد از تموم شدن کار با فایل، دیگه نیازی نیست اون رو به صورت دستی ببندیم. چون عبارت with خودش موقع خروج از بلاک، فایل رو میبنده. این باعث میشه کد تمیزتر و خطای کمتری داشته باشیم.
@Teachify | برنامه نویسی
👍7
😂😂
@Teachify | برنامه نویسی
🤣20
#سخن_بزرگان
✔️ ترسناک تر از کدی که کار نمیکنه.
کدیه که اولین بار کار میکنه.

@Teachify | برنامه نویسی
👍26🤣10
✔️ روز معلم به اون عزیزانی که توی یاد دادن یک چیز مفید و خوب به بقیه کم نمیذارن و همیشه به طرف مقابلشون دید و هدف میدن مبارک❤️
@Teachify | برنامه نویسی
👍177
✔️ دامین های مهندسی نرم افزار
System Software:
نوشتن نرم افزار های سیستم مانند Compiler که اشخصاصی با این تخصص نسبتا کم هستند و درآمد های بالایی نیز دارند.

Application Software:
توسعه و ساخت نرم افزار هایی اپلیکیشنی مثل Office

Engineering/Scientific Software:
نرم افزار های مهندسی و عملی مانند matlab که نیاز این دسته از افراد را فراهم می کند.

Embedded Software:
نوشتن نرم افزار برای Embedded ها مانند مایکروفر و ... یکی از مثال ها اینترنت اشیا هست.

Product line Software:
نرم افزار هایی که تولید می شوند و بر اساس نیاز کاربر شخصی سازی می شوند. مانند Wordpress

Web/Mobile Software:
این دسته را فکر میکنم بخوبی آشنا هستید. مانند برنامه های اندروید و ios و ...

Artificial Intelligence Software:
مانند DeepFake

بجز این دامین ها کلی دامین دیگر هم داریم که به آنها اشاره نمیکنم.
@Teachify | برنامه نویسی
👍10
✔️ معرفی پلتفرم Codapi، برای آموزش و مستند سازی
میتونید کد بنویسد و همانجا اجرا کند🔥
https://codapi.org
همه چی هم داره programming ، databases، network و ...
https://github.com/nalgeon/codapi

@Teachify | برنامه نویسی
👍2
✔️ توضیحاتی پیرامون rabbitmq

توی rabbitmq ما وب سایتمون رو داریم که با اسم producer یا تولید کننده شناخته میشه و در آخر هم Consumer یا مصرف کننده رو داریم که همون سرور ما حساب میشه.
بین این 2 تا rabbitmq قرار میگیره.
مثلا کاربر توی وب سایت ما میاد و میگه من میخوام فلان pdf رو برام بسازی، این درخواست اول میره به rabbitmq بعدش میره توی صف قرار میگیره و سپس concumer میاد و از صف برمیداره و پردازش میکنه.
ما ممکنه چند تا concumer داشته باشیم که همزمان چند تا کار رو انجام بدن.

خود rabbitmq از 2 بخش تشکل شده که یکیش queue یا صف هست و اون یکیش exchange هست.
به این صورت که وقتی producer ما میاد و یه درخواستی رو به rabbitmq میفرسته، اولش توی exchange میره و بعدش اون میده به صف ها.

خود exchange هم چند نوع هست.
اولیش direct exchange هست که بر اساس routing key ای که داره میاد و درخواست ما رو توی یکی از صف ها میذاره.
مثلا اگه routing key: "green" باشه، میاد و درخواست من رو توی صفی که green هست قرار میده.

نوع بعدیش fanout هست که اگه درخواستی بیاد، میره و اون رو توی همه صف ها کپی میکنه.

نوع بعدش topic هست که میاییم و بهش یه الگو میدیم و بر اساس اون الگو میاد و صف ما رو انتخاب میکنه. مثلا:
routing key: "first.green.fast"
توی صف ها هم به این صورت داریم:
"*.green.*"
"*.red.fast"
"*.*.fast"
بر اساس الگو میاد و مورد اول و سوم رو انتخاب میکنه. چون * توی regex یعنی همه چی میتونه باشه.

مورد بعدی header هست که به صورت key و value هست.
headers: {"key1", "value1"}
توی صف ها هم به این صورت داریم:
{"x-match, "any",
"key1, "value1",
"key2", "value2"}

{"x-match, "any",
"key3, "value3"}

{"x-match, "all",
"key1, "value1",
"key2", "value2"}

توی herader exchange ها ما یه دونه special header داریم به اسم x-match که 2 تا مقدار any و all رو میگیره! به صورت پیشفرض هم روی all هست.
توی any یعنی حداقل یکیش باید برابر با همون header ما باشه.
ولی توی all باید همه شون برابر باشن تا به اون صف هم درخواست ارسال بشه.
توی مثال بالا ما فقط به صف اول درخواستمون ارسال میشه.

داشتم واس خودم مینوشتم که واس شما هم فرستادم 🙊 اگه چیز اشتباهی هست یا چیزی که میتونه بهترش کنه رو توی کامنت ها شما بگین🌺
@Teachify | برنامه نویسی
2👍1👎1
✔️ تابع range در پایتون

تابع range در پایتون برای ایجاد دنباله‌ای از اعداد صحیح به کار می‌رود. این تابع کاربردهای مختلفی دارد، از جمله:

▪️ایجاد حلقه‌های for: تابع range به طور معمول در حلقه‌های for برای تکرار تعداد مشخصی از اعداد استفاده می‌شود.
▪️ایجاد لیست‌ها: می‌توان از تابع range برای ایجاد لیست‌هایی از اعداد به طور مستقیم استفاده کرد.
▪️تولید مقادیر برای توابع: می‌توان از تابع range برای تولید مقادیر برای آرگومان‌های توابع دیگر استفاده کرد.

فرم کلی تابع range به صورت زیر است:

range(start, stop, step)

ایجاد یک حلقه for:

for i in range(10):
print(i)


0
1
2
3
4
5
6
7
8
9


ایجاد یک لیست:

numbers = list(range(10))
print(numbers)


این کد خروجی زیر را چاپ می‌کند:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


تولید مقادیر برای یک تابع:

def square(x):
return x * x

for i in range(10):
print(square(i))


این کد خروجی زیر را چاپ می‌کند:

0
1
4
9
16
25
36
49
64
81


@Teachify | برنامه نویسی
👍1231
✔️ سایت زدن واسه مشاوره به کسایی که قصد خودکشی دارن، بعد میری تو سایت میزنه کشور شمارو ساپورت نمیکنه.
خب این خودش یه دلیل واسه خودکشی نیست؟!!!

🆔 @Teachify | rezadolati
🗿23🤣14😢6👍4💔2