Уведомления

Группа в Telegram: @pythonsu

#1 Март 8, 2013 04:02:58

MarkHammer
Зарегистрирован: 2013-02-24
Сообщения: 97
Репутация: +  0  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

Подскажите пожалуйста
имеется к примеру список
s'123','123','25','34','34')
как из него удалить одинаковые элементы ? в действительности список большой - порядка 2000 элементов и на каких местах могут располагаться двойники - не известно…
получается что надо перебирать по индексам в цикле - сравнивая каждый элемент списка ? или есть какая-то функция ?

Офлайн

#2 Март 8, 2013 04:21:56

mironich
От:
Зарегистрирован: 2011-05-23
Сообщения: 118
Репутация: +  2  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

MarkHammer
Подскажите пожалуйста имеется к примеру списокs'123','123','25','34','34')как из него удалить одинаковые элементы ? в действительности список большой - порядка 2000 элементов и на каких местах могут располагаться двойники - не известно…получается что надо перебирать по индексам в цикле - сравнивая каждый элемент списка ? или есть какая-то функция ?
Сделайте из него последовательность,
set()



Офлайн

#3 Март 8, 2013 06:25:22

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

mironich
поправочка: list и tuple это последовательности, set это множества.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#4 Март 8, 2013 10:25:18

dimy44
От: Евпатория
Зарегистрирован: 2012-04-21
Сообщения: 463
Репутация: +  42  -
Профиль  

как удалить одинаковые элементы списка

Опять ТС не уточнил, важно ли сохранение очередности элементов, ведь это определяющий фактор при выборе способа. И еще это все уже было и поиском по форуму легко находится.

Офлайн

#5 Март 10, 2013 08:37:33

MarkHammer
Зарегистрирован: 2013-02-24
Сообщения: 97
Репутация: +  0  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

К сожалению множество наверное не подойдет - т.к. мне потом необходимо выбирать элементы по индексам… или из множества тоже есть способ выбрать элементы ?

Офлайн

#6 Март 10, 2013 08:47:55

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

MarkHammer
К сожалению множество наверное не подойдет - т.к. мне потом необходимо выбирать элементы по индексам… или из множества тоже есть способ выбрать элементы ?
Собственно, никто же не запрещает полученное из списка множество потом опять преобразовать в список.



Офлайн

#7 Март 10, 2013 10:11:10

MarkHammer
Зарегистрирован: 2013-02-24
Сообщения: 97
Репутация: +  0  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

FishHook
Спасибо ! - работает !!!
Единственное как отсортировать этот список от минимального значения к максимальному - функция sort() сортирует но в виде

'1', ‘100’, ‘1000’, ‘1001’, ‘1002’, ‘1003’, ‘1004’, ‘1005’, ‘1006’, ‘1007’, ‘1008’, ‘1009’, ‘101’, ‘1010’, ‘1011’, ‘1012’, ‘1013’, ‘1014’, ‘1015’, ‘1016’, ‘1017’, ‘1018’, ‘1019’, ‘102’, ‘1020’, ‘1021’, ‘1022’, ‘1023’, ‘1024’, ‘1025’, ‘1026’, ‘1027’, ‘1028’, ‘1029’, ‘103’, ‘1030’, ‘1031’, ‘1032’, ‘1033’, ‘1034’, ‘1035’, ‘1036’, ‘1037’, ‘1038’, ‘1039’, ‘104’, ‘1040’, ‘1041’, ‘1042’, ‘1043’, ‘1044’, ‘1045’, ‘1046’, ‘1047’, ‘1048’, ‘1049’, ‘105’, ‘1050’, ‘1051’, ‘1052’, ‘1053’, ‘1054’, ‘1055’, ‘1056’, ‘1057’, ‘1058’, ‘1059’, ‘106’, ‘1060’, ‘1061’, ‘1062’, ‘1063’, ‘1064’, ‘1065’, ‘1066’, ‘1068’, ‘1069’, ‘107’, ‘1070’, ‘1071’, ‘1072’, ‘1073’, ‘1074’, ‘1075’, ‘1076’, ‘1077’, ‘1078’, ‘1079’, ‘108’, ‘1080’, ‘1081’, ‘1082’, ‘1083’, ‘1084’, ‘1085’, ‘1086’, ‘1087’, ‘1088’, ‘1089’, ‘109’, ‘1090’, ‘1091’, ‘1092’, ‘1093’, ‘1094’, ‘1095’, ‘1096’, ‘1097’, ‘1098’, ‘1099’, ‘11’, ‘110’, ‘1100’, ‘1101’, ‘1103’, ‘1104’, ‘1105’, ‘1106’, ‘1107’, ‘1108’, ‘1109’, ‘111’, ‘1110’, ‘1112’ и т.д.

а как отсортировать ‘1’,'2', ‘3’ и т.д. ?

Отредактировано MarkHammer (Март 10, 2013 10:11:36)

Офлайн

#8 Март 10, 2013 10:27:45

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

Ну либо преобразовать список строк в список чисел

int_lst=map(int, str_lst)
Ну или сортировать как то так

print sorted(str_lst, key=lambda x: int(x)



Офлайн

#9 Март 10, 2013 10:29:58

MarkHammer
Зарегистрирован: 2013-02-24
Сообщения: 97
Репутация: +  0  -
Профиль   Отправить e-mail  

как удалить одинаковые элементы списка

Спасибо всем за помощь !!! Получилось привести список к нужному виду… !!!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version