Tag: списка

Как преобразовать этот список в словарь в Python?

У меня есть список: paths = [['test_data', 'new_directory', 'ok.txt'], ['test_data', 'reads_1.fq'], ['test_data', 'test_ref.fa']] Я хочу преобразовать это в словарь следующим образом: {'test_data': ['ok.txt', 'reads_1.fq'], 'test_data/new_directory', ['ok.txt']} Список является динамическим. Целью этого является создание простой древовидной структуры. Я хочу сделать это, используя itertools следующим образом: from itertools import izip i = iter(a) b = dict(izip(i, i)) […]

Переупорядочить список точек для достижения кратчайшего расстояния между ними

У меня есть список 2D-точек, например: 1,1 2,2 1,3 4,5 2,1 Расстояние между этими точками известно (например, с использованием math.hypot.) Я хочу отсортировать список, чтобы между ними было минимальное расстояние. Я в порядке с любым возможным решением, если точки находятся в кратчайшем порядке. Какой самый питонический способ достичь этого? Я рассматривал возможность разработки расстояния между […]

Замораживание в Python?

Я программировал в Python некоторое время, и совсем недавно начал использовать Ruby на работе. Языки очень похожи. Тем не менее, я просто столкнулся с функцией Ruby, которую я не знаю, как реплицироваться в Python. Это метод freeze Руби. irb(main):001:0> a = [1,2,3] => [1, 2, 3] irb(main):002:0> a[1] = 'chicken' => "chicken" irb(main):003:0> a.freeze => […]

Изменить значения в списке словарей?

my_dicts = [ { 'key1' : 'value1', 'key2' : 'value2' }, { 'key1' : 'value1', 'key2' : 'value2' }, { 'key1' : 'value1', 'key2' : 'value2' }] Каким будет наиболее эффективный способ заменить все экземпляры «value2» на «value3»?

Python – самый быстрый способ проверить, содержит ли строка определенные символы в любом из элементов списка

Каков самый быстрый способ проверить, содержит ли строка какие-либо символы из любых элементов списка? В настоящее время я использую этот метод: lestring = "Text123" lelist = ["Text", "foo", "bar"] for x in lelist: if lestring.count(x): print 'Yep. "%s" contains characters from "%s" item.' % (lestring, x) Есть ли способ сделать это без итерации (что сделает […]

Python: длина строк строки

Есть ли более идиоматический способ суммирования строк в Python, чем при использовании цикла? length = 0 for string in strings: length += len(string) Я попробовал sum() , но он работает только для целых чисел: >>> sum('abc', 'de') Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: sum() can't sum strings [use ''.join(seq) […]

Создание словаря со списком списков в Python

У меня огромный файл (около 200 тыс. Входов). Входы представлены в форме: ABCD BEF CABD D Я читаю этот файл и сохраняю его в списке следующим образом: text = f.read().split('\n') Это разделяет файл всякий раз, когда видит новую строку. Следовательно, текст выглядит следующим образом: [[ABCD] [BEF] [CABD] [D]] Теперь я должен хранить эти значения в […]

python найти разницу между двумя списками

Я новичок в программировании, но продолжаю учиться, и недавно я ударил по стене, поэтому я прошу помощи. Извините, если это обсуждалось ранее, но я не могу найти ответ на свою проблему. У меня есть два списка. И мне нужно сравнить их, и в результате получить объекты, которые НЕ совпадают. Например: a = [1,2,3,4,5,6] b = […]

На месте способа применить перестановку к списку? (инвертирует сортировку по ключу)

Вот пример того, что я хочу сделать spam_list = ["We", "are", "the", "knights", "who", "say", "Ni"] spam_order = [0,1,2,4,5,6,3] spam_list.magical_sort(spam_order) print(spam_list) ["We", "are", "the", "who", "say", "Ni", "knights"] Я могу сделать это с enumerate , list и т. Д., Но я хотел бы прямо влиять на spam_list , например list.sort() а не копировать его, как […]

Python: разделение списка на под-списки на основе диапазонов индексов

ОБНОВЛЕНО: В python, как я разделяю список на под-списки на основе диапазонов индексов например, исходный список: list1 = [x,y,z,a,b,c,d,e,f,g] используя диапазоны индексов 0 – 4: list1a = [x,y,z,a,b] используя диапазоны индексов 5-9: list1b = [c,d,e,f,g] благодаря! Я уже знал (переменные) индексы элементов списка, которые содержат определенную строку и хотят разбить список на основе этих значений […]

Python - лучший язык программирования в мире.