پایتون - مرتب سازی لیست ها
مرتب سازی لیست به صورت عددی
() sortاشیا List لیست روشی دارند که به صورت پیش فرض لیست را به صورت عددی ، صعودی مرتب می کند:
مثال
مرتب سازی لیست بر اساس حروف الفبا:
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort()
print(thislist)
مثال
مرتب سازی لیست به صورت عددی:
thislist = [100, 50, 65, 82, 23]
thislist.sort()
print(thislist)
مرتب کردن نزولی
برای مرتب سازی نزولی ، از استدلال کلمه کلیدی استفاده کنید reverse = True:
مثال
مرتب سازی لیست به صورت نزولی:
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort(reverse = True)
print(thislist)
مثال
مرتب سازی لیست به صورت نزولی:
thislist = [100, 50, 65, 82, 23]
thislist.sort(reverse = True)
print(thislist)
عملکرد مرتب سازی را سفارشی کنید
همچنین می توانید عملکرد خود را با استفاده از استدلال کلمه کلیدی سفارشی کنید .key = function
این تابع عددی را برای مرتب سازی لیست (ابتدا کمترین عدد) استفاده خواهد کرد:
مثال
لیست را بر اساس نزدیک بودن عدد به 50 مرتب کنید:
def myfunc(n):
return abs(n - 50)
thislist = [100, 50, 65, 82, 23]
thislist.sort(key = myfunc)
print(thislist)
مرتب سازی بر حسب مورد
به طور پیش فرض ، این sort()روش به حروف کوچک و بزرگ حساس است ، در نتیجه همه حروف بزرگ قبل از حروف کوچک مرتب می شوند:
مثال
مرتب سازی حساس به حروف می تواند نتیجه غیر منتظره ای را به همراه داشته باشد:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort()
print(thislist)
خوشبختانه هنگام مرتب سازی لیست می توانیم از توابع داخلی به عنوان توابع کلیدی استفاده کنیم.
بنابراین اگر یک تابع مرتب سازی بدون حساسیت بزرگ را می خواهید ، از str.lower به عنوان یک تابع کلیدی استفاده کنید:
مثال
مرتب سازی بر اساس لیست به حروف کوچک و بزرگ:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort(key = str.lower)
print(thislist)
به صورت برعکس
اگر بخواهید ترتیب یک لیست را بدون توجه به حروف الفبا معکوس کنید ، چه می کنید؟
این() reverseروش ترتیب مرتب سازی فعلی عناصر را برعکس می کند.
مثال
ترتیب موارد لیست را معکوس کنید:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.reverse()
print(thislist)


