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

Я пытаюсь присвоить значения хеш-переменных переменным, но я не могу получить каждое значение, присвоенное переменной. Пожалуйста, поделитесь своими мыслями

say my %data = Dumper($data);   

$VAR1 = {
          'cnt' => 2000,
          'inc' => 30,
          'start' => 1440154820,
          'end' => 1440154860,
          'values' => [
                        '0.001234',
                        '0.001878',
                        '0.001849',

ожидаемый результат

$start = 0.001234:1440154820
$end = 0.001849:1440154860

Привет, я пытаюсь получить эти значения для переменных, как показано ниже из вышеупомянутого хэша

$value1 = 0.001234:1440154820   # like $VAR1{values[0]:$VAR1{start}
$value2 = 0.001849:1440154860   # $VAR1{values[2]:$VAR1{end}

1 ответ

Решение

Это то, что вы просите?

use strict;
use warnings;

my $data = {
  cnt    => 2000,
  inc    => 30,
  start  => 1440154820,
  end    => 1440154860,
  values => [0.001234, 0.001878, 0.001849],
};

my $start = join ':', $data->{values}[0], $data->{start};
my $end   = join ':', $data->{values}[2], $data->{end};

print "\$start = $start\n";
print "\$end   = $end\n";

выход

$start = 0.001234:1440154820
$end   = 0.001849:1440154860
Другие вопросы по тегам