بازگشت به دوره
آموزش رایگان صفر تا صد پایتون (Python) به زبان ساده
0% تکمیلشده
0/0 مرحله
-
معرفی پایتون
-
شروع کار با پایتون
-
دستور زبان پایتون (Python Syntax)
-
توضیح کامنتها در پایتون
-
متغیرها در پایتون
-
نامهای متغیر در پایتون
-
معرفی متغیرها در پایتون و اختصاص چندین مقدار به آنها
-
معرفی متغیرها در خروجی با استفاده از پایتون
-
متغیرهای سراسری (Global Variables) در پایتون
-
انواع دادهها در پایتون
-
انواع اعداد در پایتون
-
تبدیل نوع داده در پایتون (Python Casting)
-
رشتهها در پایتون (Python Strings)
-
برش دادن رشتهها در پایتون (Python - Slicing Strings)
-
تغییر رشتهها در پایتون
-
ترکیب رشتهها در پایتون (String Concatenation)
-
آشنایی با فرمتبندی رشتهها در پایتون
-
کاراکترهای Escape در پایتون
-
مقدمهای بر بولیها (Booleans) در پایتون
-
عملگرها در پایتون
-
لیستها در پایتون
-
دسترسی به آیتمهای لیست در پایتون
-
تغییر مقدار آیتمهای لیست در پایتون
-
افزودن آیتم به لیست در پایتون
-
حذف آیتمها از لیست در پایتون
-
حلقه زدن در لیستها در پایتون
-
معرفی List Comprehension در پایتون
-
مرتبسازی لیستها در پایتون
-
کپی کردن لیستها در پایتون
-
اتصال (Join) لیستها در پایتون
-
آشنایی با Tuple در پایتون
-
دسترسی به آیتمهای یک Tuple در پایتون
-
بروزرسانی Tuple در پایتون
-
باز کردن (Unpacking) Tuple در پایتون
-
حلقهها در Tupleها در پایتون
-
آموزش ترکیب و تکرار تاپلها در پایتون (Join Tuples)
-
مجموعهها (Set) در پایتون
-
دسترسی به آیتمهای مجموعه (Set) در پایتون
-
افزودن آیتم به Set در پایتون
-
حذف آیتمها از Set در Python
-
حلقه در مجموعهها (Set) در پایتون
-
روشهای ترکیب مجموعهها در پایتون (Join Sets)
-
دیکشنریها در پایتون
-
دسترسی به آیتمهای دیکشنری در پایتون
-
تغییر مقادیر دیکشنری در پایتون
-
اضافه کردن آیتمها به دیکشنری در پایتون
-
حذف آیتمها از دیکشنری در پایتون
-
استفاده از حلقهها در دیکشنریها در پایتون
-
کپی کردن دیکشنری در پایتون
-
دیکشنریهای تو در تو در پایتون (Nested Dictionaries)
-
شرطها و دستور If در پایتون
-
حلقههای while در پایتون
-
حلقههای for در پایتون
-
توابع در پایتون
-
معرفی فانکشنهای لامبدا در پایتون
-
آرایهها (Arrays) در پایتون
-
کلاسها و اشیا در پایتون
-
وراثت (Inheritance) در پایتون
-
ایتریتور (یکی یکی پیش رفتن) در پایتون
-
چندریختی (Polymorphism) در پایتون
-
محدوده (Scope) در پایتون
-
ماژول در پایتون چیست؟
-
کار با تاریخ در پایتون
-
ریاضیات در پایتون
-
JSON در پایتون به زبان ساده
-
عبارات منظم (RegEx) در پایتون
-
Python PIP
-
معرفی Try-Except در پایتون
-
ورودی کاربر در پایتون
-
فرمتبندی رشتهها در پایتون
کپی کردن دیکشنری در پایتون
🚀 چرا نمیتوان دیکشنری را مستقیماً کپی کرد؟
اگر یک دیکشنری را با =
به متغیر دیگری نسبت دهیم، فقط یک ارجاع (Reference) ایجاد میشود. این یعنی اگر مقدار دیکشنری اول تغییر کند، دومی هم تغییر خواهد کرد.
🔍 مثال:
dict1 = {"brand": "Ford", "model": "Mustang", "year": 1964}
dict2 = dict1 # فقط یک ارجاع به dict1 است!
dict1["year"] = 2024 # تغییر مقدار در دیکشنری اصلی
print(dict2) # دیکشنری دوم هم تغییر کرده است!
🔹 خروجی:
{'brand': 'Ford', 'model': 'Mustang', 'year': 2024}
✅ راهحل: باید یک کپی واقعی (Deep Copy) از دیکشنری ایجاد کنیم!
📌 روشهای درست برای کپی کردن دیکشنری
1️⃣ استفاده از متد ()copy
با استفاده از متد ()copy میتوان یک کپی مستقل از دیکشنری ایجاد کرد.
🔍 مثال:
thisdict = {"brand": "Ford", "model": "Mustang", "year": 1964}
mydict = thisdict.copy() # ایجاد یک کپی جدید
print(mydict) # دیکشنری کپی شده را نمایش میدهیم
🔹 خروجی:
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}
✅ حالا اگر مقدار thisdict
را تغییر دهیم، mydict
بدون تغییر باقی میماند!
2️⃣ استفاده از تابع ()dict
یک روش دیگر برای کپی کردن دیکشنری استفاده از تابع ()dict است.
🔍 مثال:
thisdict = {"brand": "Ford", "model": "Mustang", "year": 1964}
mydict = dict(thisdict) # یک کپی مستقل
print(mydict) # نمایش دیکشنری جدید
🔹 خروجی:
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}
✅ این روش هم مانند متد ()copy یک کپی واقعی ایجاد میکند.
🏆 چالش کدنویسی
🔹 یک دیکشنری بساز که شامل نام، سن و شهر باشد.
🔹 آن را به دو روش بالا کپی کن.
🔹 مقدار سن را در دیکشنری اصلی تغییر بده و بررسی کن که آیا مقدار در کپی تغییر کرده است یا نه؟