Я решаю проблему, где мне нужен конкретный вид, который я написал в своей функции MyFn
, но результат sorted
в python - это список. Можно ли вернуть строку без использования join
? sorted(s, key=MyFn)
Сортировка строк без преобразования в массив
ответ
Это невозможно, потому что sorted()
предназначен для возврата списка.
Вы можете использовать .join()
, чтобы преобразовать его в строку.
s_list = sorted(s, key=MyFn)
s_str = "".join(s_list)
Если вы не можете использовать .join()
, есть еще один способ, но это немного сложнее, и я очень не Recommand его. Вы можете использовать repr()
для преобразования списка в строку, а затем благодаря нарезке, вы можете получить письма из этого списка:
s_str = repr(sorted(s, key=MyFn))[2::5]
В представлении списка символов нечто вроде ['s', 't', 'r', 'i', 'n', 'g']
, это должно работать.
Я не могу использовать 'join', и я могу использовать отсортированные только один раз :) –
@Bob Почему вы не могли? И, пожалуйста, используете ли вы Python 2 или Python 3? – Delgan
Невозможно использовать, потому что это задача, но я могу использовать python 2 или 3 –
Можно ли вернуть строку без использования
join
?
Да, это возможно, но это медленно:
src = ['a', 'b', 'c']
dest = ''
for c in src:
dest += src
print(dest)
Или с functools.reduce
:
from functools import reduce
src = ['a', 'b', 'c']
dest = reduce(str.__add__, src)
print(dest)
- 1. Массив строк для преобразования в смешанный массив
- 2. Преобразования числового массива в массив строк ячейки
- 3. Ассоциативный массив для преобразования строк
- 4. Многомерный массив для преобразования строк
- 5. PHP-массив для преобразования строк
- 6. массив выбора строк сортировка (C)
- 7. Массив строк и Gnome Сортировка
- 8. Сортировка строк, вставленных в массив в Java
- 9. Массив для преобразования строк в период CodeIgniter
- 10. преобразования строк/Интс в массив объектов
- 11. Преобразования массива строк в двойной массив
- 12. Сортировка 2D массив строк в Scala
- 13. Сортировка массива строк в массив объектов
- 14. mongoDB массив сортировка без linq
- 15. преобразования массив строк в массив байтов в C++
- 16. дата преобразования строк в столбцы без поворота
- 17. SQL преобразования строк в столбцы без точки
- 18. push_back для строк без преобразования в вектор
- 19. Сортировка и сравнение строк без использования библиотечных функций строк
- 20. Сортировка строк Сортировка
- 21. Notepad ++ сортировка строк без точки в конце
- 22. Изменение строки в байт-массив без преобразования
- 23. Преобразование json в массив php дает массив для преобразования строк
- 24. Рекурсивно сортировка массива строк без вспомогательного параметра
- 25. PHP Простой массив для преобразования строк
- 26. Строковый массив для преобразования строк Swift
- 27. Laravel 4 массив для преобразования строк
- 28. Сортировка JavaScript массив строк, содержащих числа
- 29. Сортировка массива строк без использования метода split в C#?
- 30. Сортировка 2-мерный массив строк на Android
'sorted' возвращает список, так что нет, это не возможно. – vaultah
Если ваша строка '' '' 'bytearray', тогда это возможно:' s [:] = sorted (s, key = MyFn) '. –
Почему бы не использовать '' '.join'? Python явно предоставляет только два способа сортировки, и на самом деле они являются одним и тем же методом. 'list.sort' и' sorted'. Именно это. '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' tmp.sort(); return tmp', таким образом, только один истинный вид. – ShadowRanger