شاید فکر کنید که من از چت بات ها چطور استفاده میکنم 😊
یک نمونش اینه که الان با استفاده از deepseek یه تمرین گیر آوردم که قرارش بدم اینجا تا باهم حلش کنیم و راجبش بحث کنیم تا مطالب مختلفی رو یادبگیریم.
بریم برای تمرین🤓
"ماشین حساب کلمات تکراری"
#### 📜 شرح مسئله:
برنامهای بنویسید که یک رشته متنی از کاربر بگیرد و 3 ویژگی زیر را گزارش دهد:
1. لیست کلماتی که بیشتر از ۲ بار تکرار شدهاند به همراه تعداد تکرار هر کلمه.
2. طولانیترین کلمه در متن.
3. کلماتی که حروف آنها به ترتیب الفباست (مثل کلمه "ace").
#### ⚠️ ملاحظات:
- نویسههای اضافه (مانند ! , . ?) را از کلمات حذف کنید.
- به حروف کوچک و بزرگ حساس نباشد (Case-insensitive).
- اگر ورودی خالی بود، برنامه خطای مناسب برگرداند.
#### 💡 مثال خروجی:
#پایتون #چالش #برنامه_نویسی #تمرین #کاما_کد
#programing #comma_code #challenge #python_challenge #python
📱 کانال تلگرامی
📱 پیج اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
یک نمونش اینه که الان با استفاده از deepseek یه تمرین گیر آوردم که قرارش بدم اینجا تا باهم حلش کنیم و راجبش بحث کنیم تا مطالب مختلفی رو یادبگیریم.
بریم برای تمرین
"ماشین حساب کلمات تکراری"
#### 📜 شرح مسئله:
برنامهای بنویسید که یک رشته متنی از کاربر بگیرد و 3 ویژگی زیر را گزارش دهد:
1. لیست کلماتی که بیشتر از ۲ بار تکرار شدهاند به همراه تعداد تکرار هر کلمه.
2. طولانیترین کلمه در متن.
3. کلماتی که حروف آنها به ترتیب الفباست (مثل کلمه "ace").
#### ⚠️ ملاحظات:
- نویسههای اضافه (مانند ! , . ?) را از کلمات حذف کنید.
- به حروف کوچک و بزرگ حساس نباشد (Case-insensitive).
- اگر ورودی خالی بود، برنامه خطای مناسب برگرداند.
#### 💡 مثال خروجی:
متن ورودی: "Hello world! Hello Python. Let's code with Python. Alphabetical words like apple or bee are amazing."
# خروجی:
1. کلمات تکراری (بیش از ۲ بار):
hello: 2
python: 2
2. طولانیترین کلمه: 'alphabetical'
3. کلمات با حروف الفبایی:
['ace', 'bee']
#پایتون #چالش #برنامه_نویسی #تمرین #کاما_کد
#programing #comma_code #challenge #python_challenge #python
Please open Telegram to view this post
VIEW IN TELEGRAM
کد زیر رو در نظر بگیرید. بنظرتون خروجی پرینت ها چیه؟لطفا کامنت کنید و بگید که چرا؟
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
📱 کانال تلگرام
📱 پیج اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
a = [1, 2]
b = [a, a]
a += [3]
c = [a, a]
print("b: ", b)
print("c: ", c)
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍2
سلام
#چالش اول
شما در این چالش باید مقادیر دوتا متغیر رو بدون استفاده از متغیر کمکی و در یک خط جا به جا کنید .
#چالش #چالش_پایتونی #پایتون #کاما_کد #برنامهنویسی
#python_challenge #challenge #comma_code #python #programing
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
#چالش اول
شما در این چالش باید مقادیر دوتا متغیر رو بدون استفاده از متغیر کمکی و در یک خط جا به جا کنید .
a, b = 10, 20
# جایی که شما باید برنامه رو بنویسید
print(a,b)
#--> 20 10
#چالش #چالش_پایتونی #پایتون #کاما_کد #برنامهنویسی
#python_challenge #challenge #comma_code #python #programing
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
سلام
#چالش دوم
شما در این چالش باید عدد یک عدد از ورودی بگیرید و بگید که این عدد اولش هستش یا نه
بخاطر اینکه این تمرین خیلی تکرار میشه دیگه توضیح اضافی نمیدم
ولی برای اینکه سختر بشه باید بگم که سورس کدی برندس که از همه سریعتر خلاصه تر و بهینه تر باشه
#چالش #چالش_پایتونی #پایتون #کاما_کد #برنامه_نویسی
#programing #comma_code #challenge #python_challenge #python
#چالش دوم
شما در این چالش باید عدد یک عدد از ورودی بگیرید و بگید که این عدد اولش هستش یا نه
بخاطر اینکه این تمرین خیلی تکرار میشه دیگه توضیح اضافی نمیدم
ولی برای اینکه سختر بشه باید بگم که سورس کدی برندس که از همه سریعتر خلاصه تر و بهینه تر باشه
#چالش #چالش_پایتونی #پایتون #کاما_کد #برنامه_نویسی
#programing #comma_code #challenge #python_challenge #python
❤2😁1
تو این پست میخوام راجب فانکشن zip حرف بزنم 🤔
🖱 این فانکشن هرموقع که بخواید چنتا iterator رو به هم بچسبونید به کمکتون میاد . نکاتی که باید بگم اینه این عملیات روی اندیس ها انجام میشه و برای مثال اگر دو یا سه لیست رو به این تابع پاس بدیم عناصر اول داخل یه تاپل و عناصر دوم در یه تاپل دیگه و همینطور تا آخر آورده میشن و خروجی iterator داده میشه. این فانکشن ترکیب رو به اندازه طول کوچکترین iterator پاس داده شده انجام میده.
بریم چنتا مثال بزنیم تا کامل جا بیوفته🚶♂
مثلا ما اگر بخوایم دوتا استرینگ رو به همدیگه بچسبونیم. میتونیم اینجوری عمل کنیم :
و یا میتونیم یه دیکشنری بسازیم
و .....
اگر بخواییم برعکس عمل کنیم هم میتونیم به شکل زیر انجامش بدیم
همونطور که گفتم این فانکشن به میزان طول کوچکترین iterator عملیات رو انجام میده
ولی شما میتونید با استفاده از itertools.zip_longest این مشکل رو هم برطرف کنید .
این فانکشن یه آرگومان به اسم fillvalue داره که مقدار پیشفرض اون None هستش و به جای مواردی که خالی هستن قرار میگیره حالا شما میتونید هر چیزی که دوستدارید به این آرگومان بدید تا جاهای خالیتون باهاش پر بشه
برای مثال:
امید وارم براتون مفید بوده باشه🙏 ❤️
لایک، و کامنت و اشتراک گذاری فراموش نشه😘 ⭐
✈️ کانال تلگرام 🔗
📷 پیج اینستاگرام 🔗
▶️ چنل یوتیوب 🔗
⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️ ⛔️
#پایتون #آموزش_پایتون #آموزش #کاما_کد #برنامه_نویسی #چالش #چالش_پایتونی #تابع #فانکشن
#python #comma_code #programing #challenge #python_challenge #
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
بریم چنتا مثال بزنیم تا کامل جا بیوفته
مثلا ما اگر بخوایم دوتا استرینگ رو به همدیگه بچسبونیم. میتونیم اینجوری عمل کنیم :
x="cmacd"
y="om oe"
for i,j in zip(x,y):
print(i+j,end="")
#comma code
print("\n",list(zip(x,y)))
#[('c', 'o'), ('m', 'm'), ('a', ' '), ('c', 'o'), ('d', 'e')]
و یا میتونیم یه دیکشنری بسازیم
key=[1,2,3,4,5,6,7,8,9,0]
value=["1","2","3","4","5","6","7","8","9","0"]
d=dict(zip(key,value))
#{1: '1', 2: '2', 3: '3', 4: '4', 5: '5', 6: '6', 7: '7', 8: '8', 9: '9', 0: '0'}
و .....
اگر بخواییم برعکس عمل کنیم هم میتونیم به شکل زیر انجامش بدیم
data = [('a', 1), ('b', 2), ('c', 3)]
chr, num = zip(*data)
print(chr)
# ('a', 'b', 'c')
print(num)
# (1, 2, 3)همونطور که گفتم این فانکشن به میزان طول کوچکترین iterator عملیات رو انجام میده
ولی شما میتونید با استفاده از itertools.zip_longest این مشکل رو هم برطرف کنید .
این فانکشن یه آرگومان به اسم fillvalue داره که مقدار پیشفرض اون None هستش و به جای مواردی که خالی هستن قرار میگیره حالا شما میتونید هر چیزی که دوستدارید به این آرگومان بدید تا جاهای خالیتون باهاش پر بشه
برای مثال:
from itertools import zip_longest as zip_l
x=(1,2,3,4)
y=(0,0.2)
pack=zip_l(x,y,fillvalue="--")
print(list(pack))
#[(1, 0), (2, 0.2), (3, '--'), (4, '--')]
امید وارم براتون مفید بوده باشه
لایک، و کامنت و اشتراک گذاری فراموش نشه
#پایتون #آموزش_پایتون #آموزش #کاما_کد #برنامه_نویسی #چالش #چالش_پایتونی #تابع #فانکشن
#python #comma_code #programing #challenge #python_challenge #
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
پایتون | python | برنامهنویسی | comma.code
به ⭐️کانال پایتونِ ما⭐️ خوش اومدی؛ جایی که کدها زنده میشن و ایدهها به واقعیت تبدیل میشدن! 🚀 چه تازهکار باشی و چه حرفه ای، اینجا کلی چیز منتظرته
حرفی سخنی انتقادی: @ir_379
حرفی سخنی انتقادی: @ir_379
❤4👍2
سلام
#چالش سوم
شما در این چالش باید یک وردی از کاربر بگیرید و در خروجی یک لوزی تو خالی با قطر(عمودی) عدد ورودی چاپ کنید
تضمین میشه که ورودی یک عدد صحیح فرد هستش
نمونه
inp:7
Out:
*
* *
* *
* *
* *
* *
*
#چالش #چالش_پایتونی #پایتون #کاما_کد
#python #python_challenge #challenge #comma_code #programing
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
#چالش سوم
شما در این چالش باید یک وردی از کاربر بگیرید و در خروجی یک لوزی تو خالی با قطر(عمودی) عدد ورودی چاپ کنید
تضمین میشه که ورودی یک عدد صحیح فرد هستش
نمونه
inp:7
Out:
*
* *
* *
* *
* *
* *
*
#چالش #چالش_پایتونی #پایتون #کاما_کد
#python #python_challenge #challenge #comma_code #programing
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
پایتون | python | برنامهنویسی | comma.code
سلام #چالش سوم شما در این چالش باید یک وردی از کاربر بگیرید و در خروجی یک لوزی تو خالی با قطر(عمودی) عدد ورودی چاپ کنید تضمین میشه که ورودی یک عدد صحیح فرد هستش نمونه inp:7 Out: * * * * * * * * * * *…
اومدم با معرفی یک متد استرینگ که تو حل چالش روز گذشته هم خیلی کاربردی هستش.😇
متد str.center کارش اینه که استرینگ مد نظر مارو در طول مشخصی از یک کارکتر قرار بده
این متد روی یک استرینگ اجرا میشه و دوتا آرگومان دریافت میکنه آرگومان اول width، که طول رو مشخص میکنه و آرگومان دوم fillchar که کارکتر مد نظر رو مشخص میکنه
برای مثال
حالا ما با استفاده از این متد چالش دیروز رو به شکل زیر خیلی راحت حلش کردیم.😏
دوستان لطفا برای حمایت از کانال و انگیزه دادن بهمون حتما روی پستها ریاکشن بزنید🙏 ❤️
✈️ کانال تلگرام 🔗
📷 پیج اینستاگرام 🔗
▶️ چنل یوتیوب 🔗
#پایتون #برنامه_نویسی #کاما_کد
#python #programing #comma_code
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
متد str.center کارش اینه که استرینگ مد نظر مارو در طول مشخصی از یک کارکتر قرار بده
این متد روی یک استرینگ اجرا میشه و دوتا آرگومان دریافت میکنه آرگومان اول width، که طول رو مشخص میکنه و آرگومان دوم fillchar که کارکتر مد نظر رو مشخص میکنه
برای مثال
x="comma_code".center(20,"#")
print(x)
'''
Out:
#####comma_code#####
'''
حالا ما با استفاده از این متد چالش دیروز رو به شکل زیر خیلی راحت حلش کردیم.
n=int(input())
for i in range(1,n+1,2):
l=(" "*(i-2)).center(i,"*")
print(l.center(n*2," "))
for i in range(n-2,0,-2):
l=(" "*(i-2)).center(i,"*")
print(l.center(n*2," "))
دوستان لطفا برای حمایت از کانال و انگیزه دادن بهمون حتما روی پستها ریاکشن بزنید
#پایتون #برنامه_نویسی #کاما_کد
#python #programing #comma_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
پایتون | python | برنامهنویسی | comma.code
به ⭐️کانال پایتونِ ما⭐️ خوش اومدی؛ جایی که کدها زنده میشن و ایدهها به واقعیت تبدیل میشدن! 🚀 چه تازهکار باشی و چه حرفه ای، اینجا کلی چیز منتظرته
حرفی سخنی انتقادی: @ir_379
حرفی سخنی انتقادی: @ir_379
❤6👍3🔥3
سلام
#چالش چهارم
شما در این چالش باید یک ورودی(بزرگتر از 0 و کوچکتر از 10) از کاربر بگیرید و با عنوان n در نظر بگیرید حالا شما باید n امین عدد خود توصیف رو چاپ کنید
عدد خود توصیف، عددی هستش که هر رقمش از چپ به راست نشان دهنده تعداد دفعات تکرار شدن اندیسش رو در عدد نشون میده
برای مثال
و یا نمونه های دیگه
inp1:2
out1:2020
inp2:3
out3:21200
#چالش #چالش_پایتونی #پایتون #کاما_کد
#python #python_challenge #challenge #comma_code #programing
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
#چالش چهارم
شما در این چالش باید یک ورودی(بزرگتر از 0 و کوچکتر از 10) از کاربر بگیرید و با عنوان n در نظر بگیرید حالا شما باید n امین عدد خود توصیف رو چاپ کنید
عدد خود توصیف، عددی هستش که هر رقمش از چپ به راست نشان دهنده تعداد دفعات تکرار شدن اندیسش رو در عدد نشون میده
برای مثال
n=1
#جایی که شما باید برنامه رو بنویسید
out=1210
و یا نمونه های دیگه
inp1:2
out1:2020
inp2:3
out3:21200
#چالش #چالش_پایتونی #پایتون #کاما_کد
#python #python_challenge #challenge #comma_code #programing
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔7❤1
سلام
#چالش پنجم
شما در این چالش باید خطا ها رو کنترل کنید یعنی اگر برنامه یکسری خطای خاص داشت هیچ کاری انجام نده ولی باقی خطا ها رو نمایش بده
نمونه های ما :
ValueError, TypeError,IndexError,RuntimeError
هستن
یعنی شما باید کاری کنید که زمان اجرای فانکشن مد نظر وقتی با این خطاها روبه رو شد هیچ کاری انجام نده و به اصطلاح سکوت کنه
پیشنهاد میکنم یه سر هم به داکیومنت کتابخونه contextlib هم بزنید
#پایتون #چالش #چالش_پایتونی #کاما_کد #برنامه_نویسی
#python #python_challenge #challenge #comma_code #programing
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
#چالش پنجم
شما در این چالش باید خطا ها رو کنترل کنید یعنی اگر برنامه یکسری خطای خاص داشت هیچ کاری انجام نده ولی باقی خطا ها رو نمایش بده
نمونه های ما :
ValueError, TypeError,IndexError,RuntimeError
هستن
یعنی شما باید کاری کنید که زمان اجرای فانکشن مد نظر وقتی با این خطاها روبه رو شد هیچ کاری انجام نده و به اصطلاح سکوت کنه
پیشنهاد میکنم یه سر هم به داکیومنت کتابخونه contextlib هم بزنید
#پایتون #چالش #چالش_پایتونی #کاما_کد #برنامه_نویسی
#python #python_challenge #challenge #comma_code #programing
Please open Telegram to view this post
VIEW IN TELEGRAM
سلام
#چالش ششم
شما در این چالش باید یه دکوراتور بسازید که تابع رو ۳ بار اجرا کنه و اگر موفق نشد آخرین خطا رو نمایش بده
فرض کنید دارید با یا API ارتباط بگیرید و این دکوراتور رو میسازید که ۳ بار درخواست بده و اگر به مشکل خورد آخرین پیام رو نمایش بده
#پایتون #چالش #چالش_پایتونی #کاما_کد #برنامه_نویسی
#python #programing #comma_code #challenge #python_challenge
#چالش ششم
شما در این چالش باید یه دکوراتور بسازید که تابع رو ۳ بار اجرا کنه و اگر موفق نشد آخرین خطا رو نمایش بده
فرض کنید دارید با یا API ارتباط بگیرید و این دکوراتور رو میسازید که ۳ بار درخواست بده و اگر به مشکل خورد آخرین پیام رو نمایش بده
#پایتون #چالش #چالش_پایتونی #کاما_کد #برنامه_نویسی
#python #programing #comma_code #challenge #python_challenge
سلام
#چالش هفتم
شما در این چالش باید یک متاکلاس طراحی کنید که اسم متد های کلاس رو برسی کنه که اگر با _a شروع شده بودن غیر از self یک آرگومان ورودی داشته باشن، در غیر اینصورت خطای TypeError چاپ کنه.
#چالش_پایتونی #چالش #کاما_کد #برنامهنویسی #پایتون
#python_challenge #challenge #comma_code #programing #python
#چالش هفتم
شما در این چالش باید یک متاکلاس طراحی کنید که اسم متد های کلاس رو برسی کنه که اگر با _a شروع شده بودن غیر از self یک آرگومان ورودی داشته باشن، در غیر اینصورت خطای TypeError چاپ کنه.
#چالش_پایتونی #چالش #کاما_کد #برنامهنویسی #پایتون
#python_challenge #challenge #comma_code #programing #python
دوتا از عملگر هایی که خیلی کم بهش اشاره شده left shift و right shift هستن امروز اومدم راجب این دوتا عملگر توضیح بدم
این عملگر ها روی بیت های باینری اینتجر ها کار میکنن . عملگر left shift میاد بیت های باینری ما رو کلا به سمت چپ میکشه و اگر ما خط کش باینری بزاریم میبینم که عدد ما ضربدر ۲ شده و مقدارش ۲ برابر شده چون تمامی بیت های ما یکبار به سمت چپ شیفت و حرکت داده شدن . right shift هم دقیقا برعکس اینکار رو انجام میده و بیت های ما رو یه سمت راست حرکت میده .
نکته ای که باید اضافه کنم اینه که سرعت این کار خیلی بیشتر از استفاده عملگر ضرب برای دوبرابر کردن مقدار مد نظر هستش.
در ادامه دو مثال انجام میدیم:
left shift:
right shift:
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
📱 کانال تلگرام
📱 پیج اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
این عملگر ها روی بیت های باینری اینتجر ها کار میکنن . عملگر left shift میاد بیت های باینری ما رو کلا به سمت چپ میکشه و اگر ما خط کش باینری بزاریم میبینم که عدد ما ضربدر ۲ شده و مقدارش ۲ برابر شده چون تمامی بیت های ما یکبار به سمت چپ شیفت و حرکت داده شدن . right shift هم دقیقا برعکس اینکار رو انجام میده و بیت های ما رو یه سمت راست حرکت میده .
نکته ای که باید اضافه کنم اینه که سرعت این کار خیلی بیشتر از استفاده عملگر ضرب برای دوبرابر کردن مقدار مد نظر هستش.
در ادامه دو مثال انجام میدیم:
left shift:
num_1=4
#ساحت متغیر اول و مقدار دهی 4
num_2=num_1<<2
#انجام دوبار left shift روی متغیر اول و قرار دادن در متغیر دوم
#شیوه انجام عملیات
'''
خط کش باینری | 1 | 2 | 4 | 8 | 16 | 32
--‐--------------------------------------------
ترکیب اولیه | 0 | 0 | 1 | 0 | 0 | 0
اولین حرکت به چپ | 0 | 0 | 0 | 1 | 0 | 0
دومین حرکت به چپ | 0 | 0 | 0 | 0 | 1 | 0
'''
print(f"{num_1} << 2 = {num_2}")
#out:4 << 2 = 16
right shift:
num_1=4
#ساحت متغیر اول و مقدار دهی 4
num_2=num_1>>2
#انجام دوبار right shift روی متغیر اول و قرار دادن در متغیر دوم
#شیوه انجام عملیات
'''
خط کش باینری | 1 | 2 | 4 | 8 | 16 | 32
--‐--------------------------------------------
ترکیب اولیه | 0 | 0 | 1 | 0 | 0 | 0
اولین حرکت به راست | 0 | 1 | 0 | 0 | 0 | 0
دومین حرکت به راست | 1 | 0 | 0 | 0 | 0 | 0
'''
print(f"{num_1} >> 2 = {num_2}")
#out:4 >> 2 = 1
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
پایتون | python | برنامهنویسی | comma.code
به ⭐️کانال پایتونِ ما⭐️ خوش اومدی؛ جایی که کدها زنده میشن و ایدهها به واقعیت تبدیل میشدن! 🚀 چه تازهکار باشی و چه حرفه ای، اینجا کلی چیز منتظرته
حرفی سخنی انتقادی: @ir_379
حرفی سخنی انتقادی: @ir_379
❤1👍1
همین الان تنظیم سرفصل های دوره پایتون ما هم تموم شد .
فصل اول :مبانی و پایه های پایتون (تقریبا ۱۳ قسمت خواهد که تا مباحث توابع پیش میریم)
فصل دوم: مقدماتی تا متوسط ( تقریبا ۱۱ قسمت خواهد بود و تا شی گرایی مقدماتی پیش میریم)
فصل سوم:پیشرفته(تقریبا ۱۰ قسمت )
فصل چهارم:کاربرد های تخصصی و اکوسیستم پایتون
فصل پنجم: ساخت چند پروژه و آشنایی با فریم ورک ها و مسیر های شغلی (تقریبا ۸ قسمت)
سرجمع چیزی حدود ۴۰ الی ۴۵ قسمت، که هر کدوم ۴۰ الی یک ساعته خواهد بود
این دوره و دوره مبانی کامپیوتر و برنامه نویسی رایگان هستن و از چنل یوتیوب ما پخش خواهند شد
منتظر حمایت های شما هستیم 🙏
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
📱 کانال تلگرام
📱 پیج اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
فصل اول :مبانی و پایه های پایتون (تقریبا ۱۳ قسمت خواهد که تا مباحث توابع پیش میریم)
فصل دوم: مقدماتی تا متوسط ( تقریبا ۱۱ قسمت خواهد بود و تا شی گرایی مقدماتی پیش میریم)
فصل سوم:پیشرفته(تقریبا ۱۰ قسمت )
فصل چهارم:کاربرد های تخصصی و اکوسیستم پایتون
فصل پنجم: ساخت چند پروژه و آشنایی با فریم ورک ها و مسیر های شغلی (تقریبا ۸ قسمت)
سرجمع چیزی حدود ۴۰ الی ۴۵ قسمت، که هر کدوم ۴۰ الی یک ساعته خواهد بود
این دوره و دوره مبانی کامپیوتر و برنامه نویسی رایگان هستن و از چنل یوتیوب ما پخش خواهند شد
منتظر حمایت های شما هستیم 🙏
#پایتون #تمرین #کاما_کد #برنامه_نویسی #چالش
#python #challenge #comma_code #programing
#python_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
پایتون | python | برنامهنویسی | comma.code
به ⭐️کانال پایتونِ ما⭐️ خوش اومدی؛ جایی که کدها زنده میشن و ایدهها به واقعیت تبدیل میشدن! 🚀 چه تازهکار باشی و چه حرفه ای، اینجا کلی چیز منتظرته
حرفی سخنی انتقادی: @ir_379
حرفی سخنی انتقادی: @ir_379
🔥8❤5
سلام
داشتم یه نکته ای رو در جایی میخوندم که دیدم جالبه و خواستم بگم. این نکته بهتون کمک میکنه در اکثر مواقع حجم استفاده برنامه شما از حافظه در چیزی حدود ۶۰ درصد کمتر بشه.
شما میدونید که وقتی دارید یک کلاس میسازید هر شی یه دیکشنری
نمونه این چنین کلاس ها:
در مقابل ما میتونم با
نمونه چنین کلاسی:
🔰تفاوت ها:
روش اول و حالت عادی
در این حالت نمونه ما کاملا پویا هستش و میتونیم ویژگی هایی بهش اضافه کنیم ولی حافظه بیشتری اشغال میکنه و همینطور جستجو کردن هم در ین مورد کندتر هستش
روش دوم و استفاده از slots
در این حالت نمونه ما پویا نیست و نمیشه بهش ویژگی اضافه کرد ولی از حافظه کمتری استفاده میکنه و همینطور سرعت جستجو بالاتر هستش. باید اضافه کنیم اگر ارث بری اتفاق افتاد و نیاز بود که کلاس فرزند ویژگی جدید داشته باشه باید slots خودش رو تعریف کنه
نکته: تفاوت حجم استفاده از حافظه در ساخت نمونه در تعداد پایین زیاد نیست و در این حالت پیشنهاد نمیکنم که از slots استفاده کنید ولی در ساخت تعداد نمونه زیاد برای مثال ۱۰۰۰۰ عددی این تفاوت کاملا حس میشه.
📊حالا بریم با یه اسکریپت تفاوت میزان فضای اشغالی این دو حالت رو در تعداد 100,000 عدد نمونه برسی کنیم.
امیدوارم براتون مفیده بوده باشه🙏😘
نظرات خودتون رو حتما کامنت کنید👌📝
#python #programing #memory_optimization #programming_tips #comma_code #comma_code_python
#پایتون #برنامه_نویسی #حافظه #بهینه_سازی #نکته #کاما_کد
📱 کانال تلگرام
📱 پیج اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
داشتم یه نکته ای رو در جایی میخوندم که دیدم جالبه و خواستم بگم. این نکته بهتون کمک میکنه در اکثر مواقع حجم استفاده برنامه شما از حافظه در چیزی حدود ۶۰ درصد کمتر بشه.
شما میدونید که وقتی دارید یک کلاس میسازید هر شی یه دیکشنری
__dict__ داره که ویژگی ها و مقادیر اون ویژگی ها رو نگهداری میکنه. باید بدونید این دیکشنری برای ساده ترین اشیا سربار حافظه قابل توجهی تولید میکنه .نمونه این چنین کلاس ها:
class N_user:
def __init__(self,name,age,loc):
self.name=name
self.age=age
self.loc=loc
در مقابل ما میتونم با
__slots__ پیشاپیش ویژگی ها رو اعلام کنیم تا برای هر شی یک ساختار آرایه ای در نظر گرفته بشه که فقط فضا برای نگهداری ویژگی هایی که تعریف کردیم رو داشته باشه.این کار باعث میشه سربار حافظه مربوط به دیکشنری کامل حذف بشهنمونه چنین کلاسی:
class S_user:
__slots__=["name","age","loc"]
def __init__(self,name,age,loc):
self.name=name
self.age=age
self.loc=loc
🔰تفاوت ها:
روش اول و حالت عادی
در این حالت نمونه ما کاملا پویا هستش و میتونیم ویژگی هایی بهش اضافه کنیم ولی حافظه بیشتری اشغال میکنه و همینطور جستجو کردن هم در ین مورد کندتر هستش
روش دوم و استفاده از slots
در این حالت نمونه ما پویا نیست و نمیشه بهش ویژگی اضافه کرد ولی از حافظه کمتری استفاده میکنه و همینطور سرعت جستجو بالاتر هستش. باید اضافه کنیم اگر ارث بری اتفاق افتاد و نیاز بود که کلاس فرزند ویژگی جدید داشته باشه باید slots خودش رو تعریف کنه
همچنین در این حالت اگر به قابلیت های خاص مثل dict یا weakref نیاز دارید میتونید اونها رو به slots اضافه کنید.نکته: تفاوت حجم استفاده از حافظه در ساخت نمونه در تعداد پایین زیاد نیست و در این حالت پیشنهاد نمیکنم که از slots استفاده کنید ولی در ساخت تعداد نمونه زیاد برای مثال ۱۰۰۰۰ عددی این تفاوت کاملا حس میشه.
📊حالا بریم با یه اسکریپت تفاوت میزان فضای اشغالی این دو حالت رو در تعداد 100,000 عدد نمونه برسی کنیم.
from sys import getsizeof as size
class N_user:
def __init__(self,name,age,loc):
self.name=name
self.age=age
self.loc=loc
def age_up(self):
self.age+=1
class S_user:
__slots__=["name","age","loc"]
def __init__(self,name,age,loc):
self.name=name
self.age=age
self.loc=loc
def age_up(self):
self.age+=1
range=range(100000)
N_users=[N_user("name",10,(10,10)) for _ in range]
S_users=[S_user("name",10,(10,10)) for _ in range]
n_memory=sum(size(i)+size(i.__dict__) for i in N_users)
s_memory=sum(size(i) for i in S_users)
print(f"n_users= {n_memory/1024/1024} MB")
print(f"s_users= {s_memory/1024/1024} MB")
print(f"frugality= {(1 - s_memory / n_memory) * 100:.1f}%")
امیدوارم براتون مفیده بوده باشه🙏
نظرات خودتون رو حتما کامنت کنید👌
#python #programing #memory_optimization #programming_tips #comma_code #comma_code_python
#پایتون #برنامه_نویسی #حافظه #بهینه_سازی #نکته #کاما_کد
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3❤2
شما در پایتون میتونید خطا های برنامه رو به کمک چندین کلمه کلیدی و بلوک کد کنترل کنید. برای راحتی توضیحات از یک مثال استفاده میکنیم و مدیریت خطا رو بر روی این مثال انجام میدیم .
مثال : ساخت فانکشنی که حاصل تقسیم دو ورودی را نمایش بدهد و اگر خطایی رخ داد بدون خاتمه یافتن برنامه خطا را به شکل فارسی برگرداند.
ما در مرحله اول باید بلوک try رو بسازیم. در این بلوک کدهایی که میتونن موجب خطا بشن رو قرار میدیم در اینصورت اگر در اجرای این کد ها خطایی پیش اومد برنامه خطا رو به بلوک های بعدی میده تا بتونیم کنترل کنیم. دستورات ما تا اینجا به این شکل میشه:
def division(a,b):
# step1
try:
result=a/b
حالا ما باید مشخص کنیم که در صورت بروز خطا باید چکار انجام بشه که اینکار توسط بلوک except انجام میشه.
همینطور ما میتونیم رفتار رو به نسبت نوع خطا هم انجام بدیم و اگر در بلوک مد نظر نوع خطا مشخص نکنیم بلوک با به وجود اومدن هر نوع خطایی اجرا میشه.
def division(a,b):
# step1
try:
result=a/b
# step2
except ZeroDivisionError:
result = "نمیتوان بر صفر تقسیم کرد"
except TypeError:
result = "این دو نوع دیتا را نمیتوان بر یکدیگر تقسیم کرد"
except:
result="خطای ناشناخته"
باید اضافه کنم که:
ما میتونیم به این شکل هم به خود آبجکت خطا هم دسترسی داشته باشیم و ازش استفاده کنیم.
except Exception as e:
'''
Exception = نوع خطا
که در این حالت تمامی خطاها در نظر گرفته میشه. شما میتونید بجای این کلمه از TypeError یا ZeroDivisionError یا هر نوع خطا دیگه استفاده کنید.
e = آبجکت خطا
این کلمه که دلبخواه هستش به آبجکت خطا اشاره میکنه و شما میتونید به کمکش به موارد مختلف خطا دست پیدا کنید برای مثال
type(e).__name__
'''
در این مرحله میتوان با بلوک else در صورت رخ ندادن هیچ یک از except ها کنترل بیشتری رو داشته باشیم و چون در این مثال نیازی به این بلوک نیست ما میسازیمش ولی داخلش رو خالی میزاریم
بلوک finally در هر صورت اجرا میشن.
def division(a,b):
# step1
try:
result=a/b
# step 2
except ZeroDivisionError :
result = "نمیتوان بر صفر تقسیم کرد"
except TypeError as e:
result =f"{type(e).__name__} :این دو نوع دیتا را نمیتوان بر یکدیگر تقسیم کرد"
except :
result="خطای ناشناخته"
# step 3
else: pass
# step 4
finally: return result
امیدوارم براتون مفید بوده باشه
حمایت فراموش نشه
#Python #ErrorHandling #ExceptionHandling #PythonExceptions
#TryExcept #PythonProgramming #CodingTips #Debugging
#PythonTips #CodeQuality #RobustCode #PythonDev
#ErrorManagement #CleanCode #PythonLearning #comma_code #programing #پایتون #مدیریت_خطا #مدیریت_استثنا #خطا_در_پایتون
#تری_اکسپت #برنامه_نویسی_پایتون #نکات_کد_نویسی #دیباگ
#نکات_پایتون #کد_تمیز #برنامه_نویسی_ایمن #یادگیری_پایتون
#خطایابی #کد_حرفه_ای #پایتون_پیشرفته
#کاما_کد #برنامه_نویسی
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3👍1👏1
Media is too big
VIEW IN TELEGRAM
اعشار شناور
در این ویدئو توضیح دادم که چرا اعشار شناور رخ میده
امید وارم مفید باشه براتون ❤️
حمایت فراموش نشه 🙏😘
#پایتون #Python #آموزش_پایتون
#اعداد_اعشاری_شناور #FloatingPoint
#comma_code #کاما_کد
#نوع_داده_اعشاری #برنامه_نویسی
#نکات_پایتون #یادگیری_پایتون
📱 کانال تلگرام
📱 صفحه اینستاگرام
📱 چنل یوتیوب
🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤 🔤
در این ویدئو توضیح دادم که چرا اعشار شناور رخ میده
امید وارم مفید باشه براتون ❤️
حمایت فراموش نشه 🙏😘
#پایتون #Python #آموزش_پایتون
#اعداد_اعشاری_شناور #FloatingPoint
#comma_code #کاما_کد
#نوع_داده_اعشاری #برنامه_نویسی
#نکات_پایتون #یادگیری_پایتون
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤1👍1