печать элемента max или min из списка в python - PullRequest
1 голос
/ 04 марта 2020

Вывод изображения фрагмента кода Я новичок в python, и когда я печатал элемент max из списка, содержащего строки, я получил следующий вывод. Ниже приведен фрагмент кода:

list2 = ["hello","h","kgjfdxg","hhiudhshuhdxguh"]
print(min(list2))
print(max(list2))

Почему он печатает элемент max как «kgjfdxg», когда «hhiudhshuhdxguh» является наибольшим элементом в списке, или же он печатает элемент max с его значением ASCII?

Ответы [ 3 ]

5 голосов
/ 04 марта 2020

Думайте о минимуме и максимуме как о сортировке, а затем о первом и последнем значении. сортируя строки, они будут отсортированы в алфавитном порядке слов в словаре. Если вы хотите напечатать строку min и max по длине, вам нужно указать max, что ключом к этому виду является функция len

list2 = ["hello","h","kgjfdxg","hhiudhshuhdxguh"]
print(min(list2, key=len))
print(max(list2, key=len))
3 голосов
/ 04 марта 2020

Вы ищете параметр key:

list2 = ["hello","h","kgjfdxg","hhiudhshuhdxguh"]

print(min(list2, key=len))
print(max(list2, key=len))

Это даст

h
hhiudhshuhdxguh
0 голосов
/ 04 марта 2020

Если я правильно помню, сортирует ли он после формата AB C, в этом случае первая буква каждой строки - это та, которая

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...