PyCoders (پایتون)
Open in Telegram
◇ #پایتون جادوگر دنیای برنامه نویسی! ◇ معرفی حوزه های کاری پایتون ◇ معرفی کتابخونه های کاربردی ◇ معرفی دوره های مفید ◇ معرفی تکنیک ها و نکات ◇ نقشه راه حوزه های مختلف ◇ اخبار و آپدیت های پایتون ◇ و هر چیزی در مورد پایتون! ■ گروه پایتون: @programmers_py
Show more4 115
Subscribers
No data24 hours
-97 days
-1730 days
Posts Archive
4 115
در اینجا چند تمرین با حلقه
while به زبان پایتون قراداد ایم که شامل مسئله، کد و توضیحات است:
### تمرین 1: چاپ اعداد 1 تا 10
صورت مسئله: برنامهای بنویسید که با استفاده از حلقه while اعداد 1 تا 10 را چاپ کند.
i = 1
while i <= 10:
print(i)
i += 1
توضیح: متغیر i از 1 شروع میشود. حلقه while تا زمانی که i کمتر یا مساوی 10 است ادامه مییابد و در هر تکرار، مقدار i چاپ شده و یک واحد افزایش مییابد.
---
### تمرین 2: محاسبه مجموع اعداد 1 تا n
صورت مسئله: برنامهای بنویسید که از کاربر یک عدد n بگیرد و مجموع اعداد از 1 تا n را با استفاده از حلقه while محاسبه کند.
n = int(input("یک عدد وارد کنید: "))
sum = 0
i = 1
while i <= n:
sum += i
i += 1
print(f"مجموع اعداد از 1 تا {n} برابر است با: {sum}")
توضیح: برنامه ابتدا عدد n را از کاربر دریافت میکند. متغیر sum برای ذخیره مجموع و i برای شمارش استفاده میشود. حلقه while تا زمانی که i کمتر یا مساوی n است، مقدار i را به sum اضافه کرده و i را افزایش میدهد.
---
### تمرین 3: شمارش معکوس
صورت مسئله: برنامهای بنویسید که از عدد 10 به صورت معکوس تا 1 شمارش کند و هر عدد را چاپ کند.
i = 10
while i >= 1:
print(i)
i -= 1
توضیح: متغیر i از 10 شروع میشود. حلقه while تا زمانی که i بزرگتر یا مساوی 1 است ادامه مییابد و در هر تکرار، مقدار i چاپ شده و یک واحد کاهش مییابد.
---
### تمرین 4: پیدا کردن اولین عدد زوج
صورت مسئله: برنامهای بنویسید که از کاربر اعداد را بگیرد و اولین عدد زوج وارد شده را چاپ کند. اگر کاربر عدد منفی وارد کرد، برنامه متوقف شود.
while True:
num = int(input("یک عدد وارد کنید: "))
if num < 0:
print("عدد منفی وارد شد. برنامه متوقف میشود.")
break
if num % 2 == 0:
print(f"اولین عدد زوج: {num}")
break
توضیح: حلقه while True به صورت بینهایت اجرا میشود مگر اینکه با break متوقف شود. برنامه عدد را از کاربر میگیرد. اگر عدد منفی باشد، برنامه متوقف میشود. اگر عدد زوج باشد (بخشپذیر بر 2)، آن را چاپ کرده و حلقه متوقف میشود.
---
### تمرین 5: محاسبه فاکتوریل
صورت مسئله: برنامهای بنویسید که فاکتوریل یک عدد n را با استفاده از حلقه while محاسبه کند.
n = int(input("یک عدد وارد کنید: "))
factorial = 1
i = 1
while i <= n:
factorial *= i
i += 1
print(f"فاکتوریل {n} برابر است با: {factorial}")
توضیح: متغیر factorial برای ذخیره نتیجه و i برای شمارش استفاده میشود. حلقه while تا زمانی که i کمتر یا مساوی n است، مقدار i را در factorial ضرب کرده و i را افزایش میدهد.
@python_rd
4 115
قدرت مخفی **kwargs 😮
وقتی نمیدونی یه فانکشن قراره چه تعداد یا چه اسمهایی از آرگومانها رو بگیره،
اصلا خوده**kwargs میتونه نجاتدهندهت باشه 😎
چی کار میکنه اصلاً **kwargs؟ 🤔
**kwargs در واقع یه syntax خاص در پایتون هست که به شما اجازه میده تا آرگومانهای نامدار (keyword arguments) رو به صورت دیکشنری به فانکشنها منتقل کنید. وقتی میگیم unpacking، منظور اینه که پایتون این دیکشنری رو میگیره و تبدیل میکنه به آرگومانهای جداگانه درون فانکشن. این فرایند باعث میشه که هیچگونه محدودیتی در تعداد آرگومانها نداشته باشیم.حالا بریم مثال اش رو ببینیم👨💻
def greet(**kwargs):
for key, value in kwargs.items():
print(f"{key.capitalize()}: {value}")
greet(name="Ali", age=27, city="Tehran")
📤 خروجی:
Name: Ali Age: 27 City: Tehran🧠 چی شد؟
خب **kwargs همه آرگومانهای نامدار رو میگیره و میریزه توی یه دیکشنری! خیلی کاربردیه برای فانکشنهای داینامیک، APIها یا موقعی که نمیدونی ورودی دقیقاً چیه!💡 ترفند: میتونی حتی **kwargs رو همونجوری که هست به یه فانکشن دیگه پاس بدی! خیلی وقتا این ترفند نجاتت میده... ولی چطوری؟ 🤔
python
def log_data(**data):
save_to_db(**data)
📌 توی پست پایتونی بعدی راجع به ترفند بالا صحبت میکنیم 😉
#python
@MoRezBin4 115
قدرت مخفی **kwargs 😮
وقتی نمیدونی یه فانکشن قراره چه تعداد یا چه اسمهایی از آرگومانها رو بگیره،
اصلا خوده**kwargs میتونه نجاتدهندهت باشه 😎
چی کار میکنه اصلاً **kwargs؟ 🤔
**kwargs در واقع یه syntax خاص در پایتون هست که به شما اجازه میده تا آرگومانهای نامدار (keyword arguments) رو به صورت دیکشنری به فانکشنها منتقل کنید.
وقتی میگیم unpacking، منظور اینه که پایتون این دیکشنری رو میگیره و تبدیل میکنه به آرگومانهای جداگانه درون فانکشن. این فرایند باعث میشه که هیچگونه محدودیتی در تعداد آرگومانها نداشته باشیم.
حالا بریم مثال اش رو ببینیم👨💻
def greet(**kwargs):
for key, value in kwargs.items():
print(f"{key.capitalize()}: {value}")
greet(name="Ali", age=27, city="Tehran")
📤 خروجی:
Name: Ali
Age: 27
City: Tehran
🧠 چی شد؟
خب **kwargs همه آرگومانهای نامدار رو میگیره و میریزه توی یه دیکشنری!
خیلی کاربردیه برای فانکشنهای داینامیک، APIها یا موقعی که نمیدونی ورودی دقیقاً چیه!
💡 ترفند: میتونی حتی **kwargs رو همونجوری که هست به یه فانکشن دیگه پاس بدی!
خیلی وقتا این ترفند نجاتت میده... ولی چطوری؟ 🤔
python
def log_data(**data):
save_to_db(**data)
@python_rd
4 115
فریمورک جَنگو (Django) یک فریمورک توسعه وب قدرتمند و رایگان بر پایه زبان پایتون است. هدف اصلی آن، توسعه سریع، کدنویسی تمیز و امنیت بالا است.
ویژگیهای کلیدی:
ORM (Object-Relational Mapping): تعامل ساده با دیتابیس بدون نیاز به SQL مستقیم.
Admin Panel خودکار: یک پنل مدیریتی قدرتمند که بهصورت خودکار ساخته میشود.
معماری MTV: شامل Model (مدل)، Template (قالب)، و View (نمایش)، مشابه MVC.
امنیت بالا: محافظت در برابر حملاتی مثل SQL Injection و XSS.
پشتیبانی از توسعه مقیاسپذیر: مناسب برای پروژههای کوچک تا بسیار بزرگ.
کاربردها:
برای ساخت وبسایتها، اپلیکیشنهای تحت وب، فروشگاههای آنلاین، شبکههای اجتماعی و حتی سیستمهای مدیریت محتوا (CMS) استفاده میشود.
@python_rd
4 115
جستجوی کلیدواژه معکوس
یک ابزار Python که به شما امکان می دهد تمام صفحات یک وب سایت معین را برای مدت زمان معین دانلود کنید و کلمات کلیدی را جستجو کنید.
https://github.com/lorenzoromani1983/wayback-keyword-search
4 115
جستجوی کلیدواژه معکوس
یک ابزار Python که به شما امکان می دهد تمام صفحات یک وب سایت معین را برای مدت زمان معین دانلود کنید و کلمات کلیدی را جستجو کنید.
https://github.com/lorenzoromani1983/wayback-keyword-search
