Mastering Perl for Bioinformatics [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Mastering Perl for Bioinformatics [Electronic resources] - نسخه متنی

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید










2.5 Printing Complex Data Structures


Sometimes
you need to look inside your complex data structures to see what the
settings are. One of the most useful ways to examine a data structure
is by means of the Data::Dumper module. This module comes standard with
all recent versions of Perl.

Here is the summary and part of the synopsis and description as
output from the perldoc
Data::Dumper command:

NAME
Data::Dumper - stringified perl data structures, suitable
for both printing and "eval"
SYNOPSIS
use Data::Dumper;
# simple procedural interface
print Dumper($foo, $bar);
(...)
DESCRIPTION
Given a list of scalars or reference variables, writes out
their contents in perl syntax. The references can also be
objects. The contents of each variable is output in a
single Perl statement. Handles self-referential strucTures correctly.
The return value can be "eval"ed to get back an identical
copy of the original reference structure.
(...)

This output of a two-dimensional array illustrates its use:

use Data::Dumper;
$array = [ ];
# Initialize the array
for($i=0; $i < 4 ; ++$i) {
for($j=0; $j < 4 ; ++$j) {
$array->[$i][$j] = $i * $j;
}
}
# Print the array "by hand"
for($i=0; $i < 4 ; ++$i) {
for($j=0; $j < 4 ; ++$j) {
printf("%3d ", $array->[$i][$j]);
}
print "\n";
}
# Print the array using Data::Dumper
print Dumper($array);

This produces the output:

  0   0   0   0 
0 1 2 3
0 2 4 6
0 3 6 9
$VAR1 = [
[
0,
0,
0,
0
],
[
0,
1,
2,
3
],
[
0,
2,
4,
6
],
[
0,
3,
6,
9
]
];

You can make a nicer display by knowing exactly what the data is and
in what form to write it out. Data::Dumper can
also display the data in a fairly readable format (and there are
several options as to how the data is displayed). In addition,
Data::Dumper allows you to dump a data structure
out to a file and then read it in to another program. See the
perldoc Data::Dumper manpage
for more details.

You can also print out an array of arrays @array
by printing each row one at a time. Remember that each row is an
anonymous array, so each entry of the @array array
is a reference to an anonymous array:

@array = (
[0, 0, 0, 0],
[0, 1, 2, 3],
[0, 2, 4, 6],
[0, 3, 99, 9]
);
for $anon (@array) {
print "@$anon\n";
}

See the Perl perllol reference page for more
information on initializing and printing arrays of arrays.


/ 156