Описание тега perl-hash

None Относится к типу хеш-переменной в Perl. Другие языки называют это словарем или ассоциируют прочь.
2 ответа

Добавление нескольких значений для ввода хеша perl

Мне нужно создать многомерный хэш. например я сделал: $hash{gene} = $mrna; if (exists ($exon)){ $hash{gene}{$mrna} = $exon; } if (exists ($cds)){ $hash{gene}{$mrna} = $cds; } где $gene, $mrna, $exon, $cds уникальные идентификаторы. Но моя проблема в…
02 сен '13 в 16:43
1 ответ

Разыменование вложенного хеша perl

Если я объявлю хеш как это: my %n = (a => {1 => "1a",2 => "2a"},"b" => {1 => "1b",2 => "2b"}); Как мне получить доступ к данным в: n -> a -> 1? Я старался print "$n{a{1}}"; print "$n{a ->{ 1}}"; Эти двое не работают
26 окт '15 в 18:10
1 ответ

Невозможно использовать строку ("") в качестве ссылки HASH, если используется "строгая ссылка"

Невозможно использовать строку ("") в качестве ссылки HASH, если используется "строгая ссылка"
18 май '18 в 06:39
2 ответа

Perl: доступ к значениям хеша внутри хеша

Я только что взял Perl. У меня есть небольшая путаница с доступом к хэш-значениям. Ниже приведен код, где я пытаюсь получить доступ к значениям хеша внутри хеша. Поскольку я использую простой текстовый редактор для кодирования, я не могу понять, в ч…
2 ответа

Как получить доступ к вложенному хэшу массивов в цикле?

У меня есть данные в этом формате a1 1901 4 a1 1902 5 a3 1902 6 a4 1902 7 a4 1903 8 a5 1903 9 Я хочу рассчитать совокупный балл (3-й столбец) для каждого объекта в первом столбце. Поэтому я попытался создать хеш, и мой код выглядит так: use strict; …
14 май '18 в 02:59
1 ответ

Проверьте, содержит ли "строка хеш-ключа" слово в perl

Я хочу проверить, присутствует ли конкретное слово в ключе хэша. Я попробовал следующим образом: while (($key, $value) = each(%hash)) { if( $key =~ /\b$some_word\b/ ) { print"$key contains $some_word \n"; } } У меня вопрос есть ли встроенная функция…
12 дек '12 в 11:39
1 ответ

Как отсортировать эти пользовательские хэши в perl по значению

Я столкнулся с проблемой с функцией сортировки в моем приложении. Мне нужно отсортировать хэш хэшей на lname ключ под instructors, Устаревшее приложение написано на Perl. Вот дамп хэша, который мне нужно отсортировать. $VAR1 = { 'instructors' => …
03 май '17 в 09:38
1 ответ

Доступ к элементам в хэше хэшей массивов в Perl

my %PlannedPerWeek = ( September => { Week1 => [80, 23, 199, 45, 19, 36], Week2 => [78, 21, 195, 43, 18, 36], Week3 => [76, 19, 191, 41, 17, 36], Week4 => [74, 17, 187, 39, 16, 36], } ); У меня есть вышеупомянутый хэш массивов в проге…
07 сен '12 в 10:35
2 ответа

Perl Hash ссылается на значения хеша внутри того же хеша

Мое требование, как показано ниже. Внутри того же хеша значения ключей зависят от другого значения ключа, как показано ниже my %test; $test{map}{a} = 32; $test{map}{b} = $test{map}{a}+10; $test{ref}{r} = $test{map}{b}; Итак, когда я делаю печать Dum…
19 июл '17 в 07:30
3 ответа

Perl: это правильный способ создания уникального массива?

Я пытаюсь создать уникальный массив независимо от его исходного порядка и без использования модуля, вот что я придумал до сих пор: my @arr = qw(b a a c d g e f); my %hash; @hash{@arr}=(); say keys %hash;
22 июн '12 в 05:49
1 ответ

Невозможно запустить подпрограмму внутри хеша подпрограмм в Perl

Привет, я новичок в Perl. У меня есть хэш perl, содержащий подпрограммы. Я пытался запустить его различными способами, которые я нашел в Интернете. Но ничего не работает. Мой код: %hashfun = ( start=>sub { print 'hello' }, end=>sub { print 'by…
23 ноя '16 в 10:46
3 ответа

Вставка и перебор хеша массивов

У меня есть следующие входные данные Country1:operator1 Country1:operator2 Country1:operator3 Country2:operator1 Country2:operator2 Country2:operator3 Я хотел бы вставить эти данные в хэш %INFO так что каждый ключ соответствует массиву "операторов",…
01 авг '18 в 10:46
1 ответ

Perl, как назначить отдельные значения переменной

Я пытаюсь присвоить значения хеш-переменных переменным, но я не могу получить каждое значение, присвоенное переменной. Пожалуйста, поделитесь своими мыслями say my %data = Dumper($data); $VAR1 = { 'cnt' => 2000, 'inc' => 30, 'start' => 1440…
21 авг '15 в 11:13
3 ответа

Perl Delete Base Key с помощью ссылки на хэш

my %myHash = ( key1 => { test1 => 1, test2 => 2, }, key2 => { test1 => 3, test2 => 4, }, ); my $myRef = $myHash{ "key". ((~~keys %myHash) + 1) } //= { test1 => 5, test2 => 6, }; Забавьте меня и предположите, что вышеупомянуто…
16 авг '12 в 15:36
1 ответ

Можно ли в хэше объединить три ключа, которые указывают на одно значение?

У меня есть сомнения в следующей декларации хеша: %metadataHash это хеш line 1: $metadataHash->{"name"} = $name; line 2: $metadataHash->{"type"} = $Type; line 3: $metadataHash->{"student"}{$file}{"math"} = "/$file"; line 4: $metadataHash-&g…
20 мар '18 в 17:05
2 ответа

Обратный вызов для доступа к свойству хеша в perl

Есть ли в Perl какой-то нативный способ узнать, к какому ключу хэша обращались?Что-то вроде магических методов, существующих в некоторых языках, или прокси-объект?
09 ноя '17 в 18:58
2 ответа

Сортировать хэш Perl от наибольшего к наименьшему

Я смотрю на пример, найденный здесь: http://perlmeme.org/tutorials/sort_function.html И он дает этот код для сортировки хэша на основе значения каждого ключа: # Using <=> instead of cmp because of the numbers foreach my $fruit (sort {$data{$a}…
18 апр '12 в 19:20
1 ответ

Ошибка perl: 'использование неинициализированного значения в конкатенации (.) или строке' с использованием хэша

У меня есть файл с разделителями табуляции: abc.txt. который имеет такие данные, как: Pytul_T015270 Protein of unknown function Pytul_T015269 Protein of unknown function Pytul_T015255 Protein of unknown function Pytul_T015297 Protein of unknown func…
23 авг '13 в 14:36
1 ответ

Как скопировать вложенный хеш

Как скопировать многоуровневый вложенный хеш (скажем, %A) в другой хеш (скажем, %B)? Я хочу убедиться, что новый хеш не содержит те же ссылки (указатели), что и исходный хеш (% A). Если я изменю что-либо в исходном хеше (% A), это не должно ничего м…
17 июл '14 в 13:33
1 ответ

Вывод значения массива из хэша в perl

Я новичок в Perl, и это сводит меня с ума. У меня есть хеш, как показано ниже %temp = ( a_collection => [\%first, \%second] ) Я хочу получить элементы массива в виде строки, чтобы я мог использовать их в качестве аргументов в цикле. У меня есть к…
19 ноя '15 в 03:50