сортировка списка по определенной букве и по алфавиту - PullRequest
0 голосов
/ 04 февраля 2020

START FUNCTION

def front_x (слова): # ваш код здесь

return

END FUNCTION

Учитывая список строк, я хочу вернуть список со строками в отсортированном порядке, за исключением группировки всех строк, которые начинаются с «x». Я знаю, что мне может понадобиться отсортировать список по словам, начинающимся с 'x', а затем по алфавиту, я просто не могу вернуть код. я все еще довольно свободен sh в этом.

1 Ответ

0 голосов
/ 04 февраля 2020

В будущем постарайтесь лучше сформулировать свой вопрос и поставить языковой тег

, это прямой способ выполнить вашу задачу (его «не обязательно оптимизировать»)

def front_x(words): # your code here
  words_starting_with_x=[]
  words_not_starting_with_x=[]
  for word in words:
    if word[0]== "x":
      words_starting_with_x.append(word)
    else:
      words_not_starting_with_x.append(word)
  words_starting_with_x = sorted(words_starting_with_x)   # there 
  words_not_starting_with_x = sorted(words_not_starting_with_x)

  return words_starting_with_x + words_not_starting_with_x  #+ operator does the concatenation for list

my_list=["hope_you_got_it!","x4_place","x2_is_not","x3_a","x5_to_do","x6_your","x7_exercises","x1_stackoverflow","some_other_words_bla_bla"]
front_x(my_list)

и вывод:

['x1_stackoverflow',
 'x2_is_not',
 'x3_a',
 'x4_place',
 'x5_to_do',
 'x6_your',
 'x7_exercises',
 'hope_you_got_it!',
 'some_other_words_bla_bla']
...