درخواست های ارتباط
جستجو
    لیست دوستان من
    صندوق پیام
    همه را دیدم
    • در حال دریافت لیست پیام ها
    صندوق پیام
    رویدادها
    همه را دیدم
    • در حال دریافت لیست رویدادها
    همه رویدادهای من

    تا 75 درصد تخفیف ویژه شب یلدا بر روی کلیه محصولات وب سایت توسینسو فقط تا 30 آذر

    مانده تا پایان تخفیف ها

    تخفیف های وب سایت
    همه تخفیف ها

    عضویت در

    کانال تلگرام

    توسینسو

    اطلاعات مطلب
      مدرس/نویسنده
      حسین احمدی
      امتیاز: 212242
      رتبه:3
      342
      253
      403
      2719
      حسین احمدی ، بنیانگذار TOSINSO ، توسعه دهنده وب و برنامه نویس ، بیش از 12 سال سابقه فعالیت حرفه ای در سطح کلان ، مشاور ، مدیر پروژه و مدرس نهادهای مالی و اعتباری ، تخصص در پلتفرم دات نت و زبان سی شارپ ، طراحی و توسعه وب ، امنیت نرم افزار ، تحلیل سیستم های اطلاعاتی و داده کاوی ... پروفایل کاربر
      دوره های مرتبط
      دوره های توسینسو دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 17 قسط خریداری کنید
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      مدرس: مهدی عادلی فر
      این دوره را در 2 قسط خریداری کنید
      دوره متوسطه برنامه نویسی به زبان جاوا به زبان ساده
      دوره متوسطه برنامه نویسی به زبان جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 18 قسط خریداری کنید
      دوره آموزشی Exploit نویسی به زبان Perl
      دوره آموزشی Exploit نویسی به زبان Perl
      مدرس: ایمان جوادی
      این دوره را در 7 قسط خریداری کنید
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 17 قسط خریداری کنید
      دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 27 قسط خریداری کنید
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      مدرس: امیر حسین فضلیخانی
      این دوره را در 12 قسط خریداری کنید
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      مدرس: کاظم تقندیکی
      این دوره را در 20 قسط خریداری کنید
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 78 قسط خریداری کنید
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 11 قسط خریداری کنید
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      مدرس: کاظم تقندیکی
      این دوره را در 11 قسط خریداری کنید
      دوره آموزشی برنامه نویسی مقدماتی پایتون به زبان ساده
      دوره آموزشی برنامه نویسی مقدماتی پایتون به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 23 قسط خریداری کنید
      دوره آموزشی ساخت ربات تلگرام
      دوره آموزشی ساخت ربات تلگرام
      مدرس: کاظم تقندیکی
      این دوره را در 8 قسط خریداری کنید
      دوره آموزشی طراحی رابط کاربری با JavaFX
      دوره آموزشی طراحی رابط کاربری با JavaFX
      مدرس: حسام رسولیان
      این دوره را در 13 قسط خریداری کنید
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      مدرس: ایمان جوادی
      این دوره را در 13 قسط خریداری کنید

      آموزش زبان پایتون :: قسمت سیزدهم - دیکشنری ها (Dictionaries)

      تاریخ 22 ماه قبل
      نظرات 0
      بازدیدها 802
      دیکشنری ها در زبان پایتون نوعی دیگر از لیست ها هستند، اما با یک تفاوت اساسی و آن تفاوت امکان تعیین کلید (key) برای هر یک از آیتم های لیست است که می توان بوسیله این کلید به آیتم های لیست به سرعت دسترسی داشت، یعنی شما مثل لیست ها از اندیس آیتم استفاده نمی کنید که باعث می شود نیازی به مرتب بودن لیست نباشد. معمولاً برای کلید دیکشنری ها از نوع string استفاده می کنند، اما می توان از کلیه نوع های immutable در پایتون برای کلید دیکشنری استفاده کرد مانند boolean، integer، tuple و ... دیکشنری ها muttable هستند، یعنی امکان تغییر مقادیر و همچنین افزودن و حذف کردن آیتم ها در دیکشنری وجود دارد. برای ایجاد دیکشنری ها از علامت ها {} استفاده می شود. بوسیله کد زیر یک دیکشنری خالی ایجاد می کنیم:

      >>> mydict={}
      >>> mydict
      {}
      

      اما همانطور که گفتیم می توان در دیکشنری یک یا چند کلید به همراه مقادیر مرتبط با کلید ها اضافه کرد، در کد زیر یک دیکشنری که کلید های آن از نوع integer و مقادیر آن از نوع string است اضافه می کنیم:

      >>> students={
      ... 1:"Hossein Ahmadi",
      ... 2:"Mohammad Nasiri",
      ... 3:"Mehdi Adelifar",
      ... 4:"Jaffar Shohani"
      ... }
      >>> students
      {1: 'Hossein Ahmadi', 2: 'Mohammad Nasiri', 3: 'Mehdi Adelifar', 4: 'Jaffar Shohani'}
      

      در کد بالا اعداد 1 تا 4 کلید های دیکشنری و رشته های روبروی هر کلید مقدار مربوط به آن کلید هستند، در ادامه می توانیم بوسیله کلید مورد به مقادیر هر کلید دسترسی داشته باشیم، برای اینکار کافیست مقدار کلید را بین [] بنویسیم:

      >>> students[1]
      'Hossein Ahmadi'
      >>> students[4]
      'Jaffar Shohani'
      

      همانطور که در ابتدا نیز گفتیم کلید دیکشنری ها می توانند از هر نوع immutable ای انتخاب شوند:

      >>> students={
      ... 'A':'Hossein Ahmadi',
      ... 'B':'Mohammad Nasiri',
      ... 'C':'Mehdi Adeli',
      ... 'D':'Jaffar Shohani'
      ... }
      >>> students['A']
      'Hossein Ahmadi'
      >>> students['C']
      'Mehdi Adeli'
      

      برای تغییر مقدار یک آیتم نیز می توان از کلید و عملگر انتساب به صورت زیر استفاده کرد:

      >>> students['C']
      'Mehdi Adeli'
      >>> students['C'] = 'Ali Moghaddam'
      >>> students['C']
      'Ali Moghaddam'
      

      همچنین برای اضافه کردن یک مقدار کافیست یک کلید جدید را در زمان انتساب مشخص کنیم:

      >>> students
      {'A': 'Hossein Ahmadi', 'C': 'Ali Moghaddam', 'B': 'Mohammad Nasiri', 'D': 'Jaffar Shohani'}
      >>> students['E']='Mehdi Adeli'
      >>> students
      {'A': 'Hossein Ahmadi', 'C': 'Ali Moghaddam', 'B': 'Mohammad Nasiri', 'E': 'Mehdi Adeli', 'D': 'Jaffar Shohani'}
      

      بر میگردیم به مبحث تعریف دیکشنری ها، استفاده از {} ساده ترین روش ایجاد یک دیکشنری است، راهکار دیگری که می توان استفاده کرد استفاده از تابع dict است، بوسیله این تابع می توان یک لیست یا یک Tuple را به عنوان پارامتر ارسال کرد و از آن یک دیکشنری ساخت، فقط دقت کنید که آیتم های داخل لیست یا Tuple می بایست خود یک لیست یا Tuple و یا رشته باشند و تعداد آیتم های داخل هر لیست داخلی نیز 2 آیتم باشد. برای مثال، در کد زیر بوسیله تابع dict یک دیکشنری از روی یک لیست که هر آیتم آن یک لیست دیگر با دو آیتم می باشد ایجاد می کنیم:

      >>> students_list=[['A','Hossein Ahmadi'],['B','Mohammad Nasiri']]
      >>> students_dict=dict(students_list)
      >>> students_dict
      {'A': 'Hossein Ahmadi', 'B': 'Mohammad Nasiri'}
      >>> students_dict['A']
      'Hossein Ahmadi'
      

      در ادامه به بررسی روش های مختلف استفاده از لیست و tuple ها برای ایجاد دیکشنری می پردازیم. روش اول که ترکیب لیست و لیست بود را در مثال بالا دیدیم. روش بعدی استفاده از حالت Tuple و Tuple هست، یعنی Tuple ای که هر یک از آیتم های آن یک Tuple هستند:

      >>> students_list=(('A','Hossein Ahmadi'),('B','Mohammad Nasiri'))
      >>> students_dict=dict(students_list)
      >>> students_dict
      {'A': 'Hossein Ahmadi', 'B': 'Mohammad Nasiri'}
      

      روش بعدی ترکیب لیست و tuple است:

      >>> students_list=[('A','Hossein Ahmadi'),('B','Mohammad Nasiri')]
      >>> students_dict=dict(students_list)
      

      روش سوم ترکیب tuple و لیست:

      >>> students_list=(['A','Hossein Ahmadi'],['B','Mohammad Nasiri'])
      >>> students_dict=dict(students_list)
      

      برای استفاده از رشته ها به عنوان آیتم لیست یا tuple باید رشته مورد نظر تنها دو کاراکتر داشته باشد که کاراکتر اول به عنوان کلید و کاراکتر دوم به عنوان مقدار کلید شناخته می شود:

      >>> chars=['ab','cd','ef','gh']
      >>> dict(chars)
      {'a': 'b', 'c': 'd', 'e': 'f', 'g': 'h'}
      

      برای ادمه با تابع update آشنا می شویم که بوسیله آن می توان دو دیکشنری را با هم ترکیب کرد، کد زیر مقادیر dict2 را در dict1 اضافه می کند:

      >>> dict1=dict(['ab','cd'])
      >>> dict2=dict(['ef','gh'])
      >>> dict1
      {'a': 'b', 'c': 'd'}
      >>> dict2
      {'e': 'f', 'g': 'h'}
      >>> dict1.update(dict2)
      >>> dict1
      {'a': 'b', 'c': 'd', 'e': 'f', 'g': 'h'}
      

      بوسیله عبارت del نیز می توان مقدار داخل یک دیکشنری را حذف کرد:

      >>> students={'A':'Hossein Ahmadi','B':'Mohammad Nasiri','C':'Reza Moghaddam'}
      >>> students
      {'A': 'Hossein Ahmadi', 'C': 'Reza Moghaddam', 'B': 'Mohammad Nasiri'}
      >>> del students['C']
      >>> students
      {'A': 'Hossein Ahmadi', 'B': 'Mohammad Nasiri'}
      

      همچنین برای پاک سازی کامل یک دیکشنری و حذف کلیه آیتم های آن از تابع clear به صورت زیر استفاده می کنیم:

      >>> chars=dict(['ab','cd','ef'])
      >>> chars
      {'a': 'b', 'c': 'd', 'e': 'f'}
      >>> chars.clear()
      >>> chars
      {}
      

      اما فرض کنیم که می خواهیم تست کنیم که یک کلید در دیکشنری ما وجود دارد یا خیر، برای اینکار می توان از عبارت in به صورت زیر استفاده کرد که خروجی آن مقدار True یا False می باشد:

      >>> students={'A':'Hossein Ahmadi','B':'Mohammad Nasiri','C':'Reza Moghaddam'}
      >>> 'C' in students
      True
      >>> 'H' in students
      False
      

      همچنین برای بدست آوردن لیست کلیه کلیدهای داخل یک دیکشنری از تابع keys به صورت زیر استفاده می کنیم:

      >>> students.keys()
      ['A', 'C', 'B']
      

      و برای بدست آوردن کل مقادیر داخل دیکشنری تابع values را استفاده می کنیم:

      >>> students.values()
      ['Hossein Ahmadi', 'Reza Moghaddam', 'Mohammad Nasiri']
      

      تابع دیگری برای دیکشنری ها وجود دارد به نام items که خروجی آن یک لیست است که هر آیتم آن یک tuple بوده که مقدار اول آن کلید آیتم و مقدار دوم آن مقدار مربوط به کلید می باشد:

      >>> students.items()
      [('A', 'Hossein Ahmadi'), ('C', 'Reza Moghaddam'), ('B', 'Mohammad Nasiri')]
      

      همانند لیست ها، در صورتی که یک دیکشنری را با عملگر انتساب در یک متغیر جدید قرار دهیم، کلیه تغییرات اعمال شده در متغیر اول در متغیر دوم نیز اعمال می شود که می توان از متد copy برای رفع این مشکل استفاده کرد. در قسمت بعدی آموزش زبان پایتون با مجموعه ها یا Sets آشنا می شویم. ITpro باشید

      نویسنده: حسین احمدی
      منبع: جزیره برنامه نویسی وب سایت توسینسو
      هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی است
      برچسب ها
      ردیفعنوان
      1آموزش زبان پایتون :: قسمت اول - مقدمات و آشنایی اولیه با پایتون
      2آموزش زبان پایتون :: قسمت دوم - دانلود پایتون و نوشتن اولین برنامه
      3آموزش زبان پایتون :: قسمت سوم - آشنایی با ساختار اسکریپت های پایتون
      4آموزش زبان پایتون :: قسمت چهارم - نوع های داده در زبان پایتون
      5آموزش زبان پایتون :: قسمت پنجم - تبدیل نوع ها به یکدیگر
      6آموزش زبان پایتون :: قسمت ششم - عملگرها در پایتون
      7آموزش زبان پایتون :: قسمت هفتم - دستور if
      8آموزش زبان پایتون :: قسمت هشتم - حلقه ها
      9آموزش زبان پایتون :: قسمت نهم - نوع های عددی و توابع کار با اعداد
      10آموزش زبان پایتون :: قسمت دهم - کار با رشته ها و توابع مرتبط
      11آموزش زبان پایتون :: قسمت یازدهم - لیست ها
      12آموزش زبان پایتون :: قسمت دوازدهم - Tuple ها
      13آموزش زبان پایتون :: قسمت سیزدهم - دیکشنری ها (Dictionaries)
      14آموزش زبان پایتون :: قسمت چهاردهم - مجموعه ها (Sets)
      15آموزش زبان پایتون :: قسمت پانزدهم - تابع zip و پیمایش چند لیست به صورت همزمان
      16آموزش زبان پایتون :: قسمت پانزدهم - روش Comprehension برای ایجاد لیست ها، دیکشنری ها و مجموعه ها
      17آموزش زبان پایتون :: قسمت شانزدهم - توابع (Functions)
      18آموزش زبان پایتون :: قسمت هفدهم - Closure ها
      19آموزش زبان پایتون :: قسمت هجدهم - توابع بازگشتی (Recursive Functions)
      20آموزش زبان پایتون :: قسمت نوزدهم - ماژول ها (Modules)
      21آموزش زبان پایتون :: قسمت بیستم - پکیج ها (Packages)
      22برنامه نویسی شئ گرا در پایتون :: مقدمات و آشنایی با کلاس و شئ
      دورهمجموعه کل دوره
      مطالب مرتبط

      در حال دریافت اطلاعات

      نظرات
      هیچ نظری ارسال نشده است

        برای ارسال نظر ابتدا به سایت وارد شوید