لیست ها یک data type در پایتون هستند( sequence type) که به صورت جمعی value ها را در خود ذخیره کمی کند .
ویژگی های لیست در پایتون :
1) ناهمگون بودن
2) اندیس دار
3) قابل تغییر
4) منظم
-----------------------------------------------------------------------------------------------------------
ما برای ساخت یک لیست خالی از [ ] ( براکت ) استفاده می کنیم
list_name = [ ]
ما برای این کار از متد های ()list و ()range استفاده می کنیم
list_name = list(range(1,10)) print(list_name) >> output : [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
یکی از ویژگی های لیست ها اندیس دار و منظم بودنشان است که باعث می شود ما به توانیم به عناصر آن ها دسترسی پیدا کنیم .
اندیس (index) اولین عضو همیشه 0 و دومین 1 و سومین 2 و ..... است.
اندیس (index) آخرین عضو همیشه 1- و یکی مانده به آخر 2- و دوتا مانده به آخر 3- و ..... است.
مثال :
list_name = [ ' ali ' , ' reza ' ] print(list_name [ 1 ] ) >> output : reza print(list_name [ -1 ] ) >> output : reza print(list_name [ -2 ] ) >> output : ali
بعضی اوقات است که ما می خواهیم از اندیس (index) یک عضو در لیست با خبر بشویم که باید از متد ()index استفاده کنیم . مثال :
list_name = [ ' ali ' , ' reza ' ] print(list_name.index(' ali ')) >> output : 0 print(list_name.index(' reza ')) >> output : 1
ما برای پاک کردن عضو ها در لیست ها دو حالت داریم :
1) اسم value (عضو) را بدانیم و بخواهیم آن را پاک کنیم .
2) به خواهیم از طریق اندیس (index) یک value را پاک کنیم.
حالت اول :
ما در این حالت از متد ()remove استفاده می کنیم . مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' ] list_name.remove( ' mohamad ' ) # delete mohamad in list print(list_name) >> output : [ ' ali ' , ' reza ' , ' ahmad ' ]
**نکته : اگر ما دو عضو تکراری در لیست داشته باشیم و یک بار آن عضو را remove کنیم اولین عضو فقط پاک می شود ( عضوی که شماره اندیس (index) اش از آن یکی کمتر باشد . مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' ali ' ] list_name.remove( ' ali ' ) print(list_name) >> output : [ ' reza ' , ' ahmad ' , ' ali ' ]
حالت دوم :
ما در این حالت ار متد ()pop استفاده می کنیم . برای مثال می خواهیم آخرین عضو لیست را پاک کنیم .
مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' ] # delete the last member list_name.pop( -1 ) >> output : ' mahamad ' print(list_name) >> output : [ ' ali ' , ' reza ' , ' ahmad ' ]
** نکته :دقت کنید که متد ()pop خروجی دارد ( خروجی اش به ما اسم عضوی را که پاک کرده است را می دهد )
ما برای اضافه کردن عضو به یک لیست در پایتون سه متد داریم که هر کدام ویژگی خود را دارند .
1) متد ()extend :
ما با متد ()extend می توانیم مجموعه ای از object ها را به یک لیست اضافه کنیم.
** نکته : متد ()extend مجموعه object ها را به آخر لیست اضافه می کند .
مثال :
list_name = [ ' ali ' , ' reza ' ] list_name.extend( ' ahmad ' , ' mohamad ' ) print(list_name) >> output : [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' ]
2) متد ()append :
ما با متد ()append می توانیم فقط یک object را و فقط به آخر لیست اضافه کنیم .
مثال :
list_name = [ ' ali ' , ' reza ' ] list_name.append( ' ahmad ' ) print(list_name) >> output : [ ' ali ' , ' reza ' , ' ahmad ' ]
3) متد ()insert :
ما با متد ()insert می توانیم فقط یک object را به هر جای لیست که خواستیم اضافه کنیم.
متد ()insert دو ورودی از کاربر می گیرد که اولی اندیس (index) است و دومی object است.
مثال :
list_name = [ ' ali ' , ' reza ' ] list_name.insert(1, ' ahmad ' ) print(list_name) >> output : [ ' ali ' , ' ahmad ' , ' reza ' ]
1) متد ()clear :
شما از متد ()clear برای پاک کردن تمام عضو ها از یک لیست استفاده می کنید نه خود متغیر لیست.
مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' ] # clear all member of list list_name.clear() print(list_name) >> output : []
2) متد ()count :
متد ()count برای شمارش یک عضو تکراری در لیست استفاده می شود.
مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' , ' ali '] # we have 2 ali in list print(list_name.count( ' ali ' )) >> output : 2
3) متد ()reverse :
متد ()reverse لیست را برای ما برعکس می سازد.
مثال :
list_name = [ 0 , 1 , 0 , 1 , 0 , 1 ] list_name.reverse() print(list_name) >> output : [ 1 , 0 , 1 , 0 , 1 , 0 ]
**نکته : ما همین کار را می توانیم به اندیس(index) انجام دهیم . مثال :
list_name = [ 0 , 1 , 0 , 1 , 0 , 1 ] print(list_name [ : : -1 ] ) >> output : [ 1 , 0 , 1 , 0 , 1 , 0 ]
اندیس [ 1- : : ] همان کار متد ()reverse را می کند.
4) متد ()sort :
متد ()sort لیست ما را بر اساس حروف الفبا ( a b c) دسته بندی می کند .
مثال :
list_name = [ ' reza ' , ' ali ' ] list_name.sort() print(list_name) >> output : [ ' ali ' , ' reza ' ]
**نکته : وقتی ما متد ()sort را صدا بزنیم ترتیب لیست اولیه ما به هم می خورد . برای جلوگیری از این مشکل ما باید sort شده لیست را در یک متغیر دیگیر تعریف کنیم . در این موقعیت ما باید از دستور sorted استفاده کنیم . مثال :
list_name = [ ' reza ' , ' ali ' ] list_name2 = sorted(list_name) print(list_name2) >> output : [ ' ali ' , ' reza ' ] print(list_name) >> output : [ ' reza ' , ' ali ' ]
5) متد ()len :
متد ()len برای فهمیدن تعداد اعضای یک لیست است.
مثال :
list_name = [ ' ali ' , ' reza ' , ' ahmad ' , ' mohamad ' , ' ali '] print(len(list_name)) >> output : 5
برای حذف یک لیست ( به صورت کامل ) باید از کلید واژه (key word) del استفاده کنیم.
مثال :
a = list(range(2,50)) del a
البته اگر بعد از حذف لیست آن را print کنیم ، به NameError بر می خوریم.
برای دیدن کانال آپارات ما اینجا کلیک کنید .
برای دیدن ویدیو آموزش لیست ها در پایتون اینجا کلیک کنید .