Найти - Пользователи
Полная версия: Удаление одинаковых элементов в списке.
Начало » Python для новичков » Удаление одинаковых элементов в списке.
1 2 3 4 5
Ed
py.user.next
dict_values([1, 2, 3, 4, 5])
это на третьем
Что такое dict_values и что значит ‘это на третьем’ ?
Ed
boltayka
Не плохо. Спросил простейшую вещь, и чуть не разжег холивар =D!
Кстати, keys() - идеологически вернее. Алгоритм построен на том факте, что ключи(keys) у словаря уникальны :)
UsCr
Ed
что значит ‘это на третьем’
pasaranax
l = dict(zip(l, l)).values()
Это на втором.
Ed
dict_values()
А это на третьем :)
Ed
А на первом что? И что же это такое все-таки dict_values и почему оно на третьем?
ex
Ed
А на первом что? И что же это такое все-таки dict_values и почему оно на третьем?
Python 3.X
Ed
ex
Ed
А на первом что? И что же это такое все-таки dict_values и почему оно на третьем?
Python 3.X
Python 3.1.2 (r312:79147, Mar 21 2010, 17:44:09)
on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
>>> dict_values()
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
NameError: name ‘dict_values’ is not defined
>>>
boltayka
Может буду не в тему, но всё-же покажу, для чего это использовалось: http://disenar.ru/1317.html (смотреть в исходный код)
Почищу код доделаю GUI, и скину сюда (ибо сейчас стыдно :)), может как-нибудь додумаете :)

Заодно спрошу, можно ли как-то отменить функцию? Допустим в функции у меня идёт:
Запрос на открытие файла. Если не открыл файл - останавливать функцию, а не продолжать. Определять не открытый файл легко (file = ''), но вот что прописать в if? Не хочу заново запускать функцию, требуя всё-таки открыть файл, а хочу именно остановить её
Ed
boltayka
Заодно спрошу, можно ли как-то отменить функцию? Допустим в функции у меня идёт:
Запрос на открытие файла. Если не открыл файл - останавливать функцию, а не продолжать. Определять не открытый файл легко (file = ''), но вот что прописать в if? Не хочу заново запускать функцию, требуя всё-таки открыть файл, а хочу именно остановить её
Не нужно никаких if-ов. Ловите exception IOError. Он генерится в том числе при проблемах с открытием файлов. Причем ловить его можно на любом уровне, не обязательно в той функции, где оно происходит.
py.user.next
>>> l = [1, 2, 3, 4, 1, 2, 3, 5]
>>> l = dict(zip(l, l)).values()
>>> l
dict_values([1, 2, 3, 4, 5])
>>> dict_values([1, 2, 3])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'dict_values' is not defined
>>> l[0]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'dict_values' object does not support indexing
а на втором список

>>> type(l)
<class 'dict_values'>
>>>
это тоже на третьем :)
py.user.next
>>> type({1:1}.keys())
<class 'dict_keys'>
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB