TGViewer
PyCoders (پایتون) PyCoders (پایتون) @python_rd · 4.1K subscribers
Post #1914 1.1K
قدرت مخفی **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
  • 👌 5
  • 👍 1
More from @python_rd
  1. Oct 17, 2026🔆 مجموعه‌ای از نرم‌افزارهای متن‌باز که با استفاده از زبان پایتون نوشته‌شده‌اند 🔹 github.…
  2. Oct 17, 2026🔆 یادگیری پایتون با پروژه های ساده و جذاب 🔹 codeclubprojects.org/en-GB/python 🐍 @python…
  3. Oct 16, 2026🔆 یک سایت خوب پر از پادکست‌های مرتبط با زبان پایتون 🔹 talkpython.fm 🐍 @python_rd
  4. Oct 15, 2026🌐 خروجی این کد پایتون چیست؟ x = [1, 2, 3] y = x x += [4, 5] print(x) print(y) 🔹 گزینه‌ها…
  5. Oct 15, 2026🔆 آیا enumerate() بهتر از index-based loop است؟ 🔹 خیلی‌ها هنوز این شکلی می‌نویسند: items…
  6. Oct 15, 2026🔆 یک تله عجیب در پایتون: bool در واقع زیرکلاس int است 🔹 خیلی‌ها می‌دانند True == 1 و Fal…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →