рдкрд╛рдпрдерди: рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде .sort () рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ - рд╕рд░рд▓ рд╢рдмреНрджреЛрдВ рдореЗрдВ

рдкреЛрд╕реНрдЯ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рдерд╛ рдХрд┐ рдЬрдм рдореИрдВрдиреЗ рдкрд╛рдпрдерди рдореЗрдВ рд╕реВрдЪрд┐рдпреЛрдВ (рд╕рд░рдгрд┐рдпреЛрдВ) рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЕрдзреНрдпрдпрди рдХрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдЫрд╛рдВрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдзрд┐ рдХрд╛ рдПрдХ рднреА рд╕рд░рд▓ рд╡рд┐рд╡рд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛: list.sort (key = ...)ред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореИрдВ рдЗрддрдирд╛ рдЕрд╢реБрдн рдерд╛ рдФрд░ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдореИрдВ рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ рдЬреЛ рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдиреАрдЪреЗ рджреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдЙрд╕реА рдиреМрд╕рд┐рдЦрд┐рдП рдЕрдЬрдЧрд░ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреА рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЦреБрдж рд╣реВрдВред

рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕реВрдЪреА рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрдиреБрдХреНрд░рдо рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд▓рдВрдмрд╛рдИ рдХреА рддреАрди рд▓рд╛рдЗрдиреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

sortList = ['a', '', 'bbb']

рдРрд░реЗ рддрддреНрд╡реЛрдВ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ (ред) рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рд░реВрдк рд╕реЗ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреЗ рдХреНрд░рдо рдореЗрдВ, рд╕рд╛рде рд╣реА рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдмрдбрд╝реЗ рд╕реЗ рдПрдХ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рдХрд░рддреЗ рд╣реИрдВ:

sortList.sort()

рддрдм рд╣рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓рддрд╛ рд╣реИ:

>>> ['a', 'bbb', 'cc']

рд╣рд╛рд▓рд╛рдБрдХрд┐, .sort () рдкрджреНрдзрддрд┐ рд╣рдореЗрдВ рд╕рд┐рджреНрдзрд╛рдВрдд рдФрд░ рд╕реЙрд░реНрдЯ рдХреНрд░рдо рджреЛрдиреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред

рд╕реЙрд░реНрдЯрд┐рдВрдЧ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреБрдВрдЬреА рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬреЛ рдХрд┐ рдкрд╛рдпрдерди 2.4 рдХреЗ рдмрд╛рдж рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИред

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдЕрдкрдиреА рд╕реВрдЪреА рдХреЛ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: 1. рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреЗ рдХреНрд░рдо рдореЗрдВ; 2. рд▓рд╛рдЗрди рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рд╕рд╛рдеред рдкрд╣рд▓рд╛ рддрд░реАрдХрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдкреНрд░рдореБрдЦ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

sortList = ['a', 'cc', 'bbb']

# "" , :
def sortByAlphabet (inputStr):
return inputStr[0] # ,

# , :
def sortByLength (inputStr):
return len(inputStr) # ,

print u' : ', sortList # >>> ['a', 'cc', 'bbb']

sortList.sort( key=sortByAlphabet ) #
print u' : ', sortList # >>> ['a', 'bbb', 'cc']

sortList.sort( key=sortByLength ) #
print u' : ', sortList # >>> ['a', 'cc', 'bbb']

# , :
sortList.sort( key=sortByLength , reverse=True ) #
print u' , : ', sortList # >>> ['bbb', 'cc', 'a']


рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ .sort () рд╡рд┐рдзрд┐ рд╕реНрд░реЛрдд рд╕реВрдЪреА рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рддреА рд╣реИ, рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдХреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддреА рд╣реИ, рдФрд░ рд╕реНрд░реЛрдд рд╕реВрдЪреА рдХреА рдПрдХ рд╣рд▓ рдХреА рдЧрдИ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдПрдХ рд╣рд▓ рдХреА рдЧрдИ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреНрд░рдордмрджреНрдз рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

newList = sorted(sortList)

- рдпрд╛ рддреЛ рдПрдХ рд╣реА рд╡рд┐рдХрд▓реНрдк, рд▓реЗрдХрд┐рди рдкреНрд░рдореБрдЦ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде (рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХреЗ рд╕рдорд╛рди):

newList = sorted(sortList, key=sortByLength)

.Sorted () рд╡рд┐рдзрд┐ рдореЗрдВ рдЕрдиреНрдп рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдореБрдЭреЗ рдЖрддреНрдо-рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЗрддрдирд╛ рднреНрд░рдорд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рдереЗред

Source: https://habr.com/ru/post/In138535/


All Articles