Используйте -readonly
для удаления только для чтения при отображении, например.
export type Foo = Readonly<{
foo: number
bar: number
}>;
export type Writeable<T> = {
-readonly [P in keyof T]: T[P];
};
export type Bar = Writeable<Foo>;
let x:Bar = {
foo: 123,
bar: 456
}
x.bar = 123; // OK
Список может быть отсортирован и дедуплицировал встроенные функции использования:
myList = sorted(set(myList))
Если Ваш вход уже отсортирован, то может быть более простой способ сделать это:
from operator import itemgetter
from itertools import groupby
unique_list = list(map(itemgetter(0), groupby(yourList)))
Если это - ясность, Вы после, а не скорость, я думаю, что это очень ясно:
def sortAndUniq(input):
output = []
for x in input:
if x not in output:
output.append(x)
output.sort()
return output
Это - O (n^2), хотя, с повторным использованием не в для каждого элемента входа перечисляют.
>, но я не знаю, как получить участников списка от хеша в алфавитном порядке.
Едва ли Ваш основной вопрос, но для дальнейшего использования ответ Rod с помощью sorted
может использоваться для того, чтобы пересечь dict
ключи в отсортированном порядке:
for key in sorted(my_dict.keys()):
print key, my_dict[key]
...
и также потому что tuple
заказаны первым членом кортежа, можно сделать то же с items
:
for key, val in sorted(my_dict.items()):
print key, val
...