Some parts of this page were machine translated.
Powered by Yandex.Translate
http://translate.yandex.com/
Trong ngôn ngữ lập trình Perl là đôi khi cần thiết để in các nội dung của băm.
Trong ngôn ngữ lập trình Perl là đôi khi cần thiết để in các nội dung của băm.
Ví dụ như, có một băm %h
với các nội dung sau đây:
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
Tùy thuộc vào những gì bạn muốn có một vài cách khác nhau để in băm.
Data::Dumper
Nếu bạn cần phải nhanh chóng nhìn thấy những gì được chứa trong băm, sau đó điều này
nó là thuận tiện để sử dụng module Data::Dumper
. Điều này có thể có ích
trong quá trình phát triển hay lỗi một chương trình.
Đây là một ví dụ mã:
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
print Dumper \%h;
Đó là những gì sẽ mất chương trình này:
$VAR1 = {
'Bob' => 'yellow',
'Alice' => 'silver',
'John' => 'red'
};
Băm cửa hàng không ra lệnh cặp giá trị. Khác nhau chương trình khởi động sẽ ra những cặp khác.
print
Điều gì xảy ra nếu bạn chỉ cần vượt qua băm trong print
?
#!/usr/bin/perl
use strict;
use warnings;
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
print %h;
Chương trình hiển thị một dòng của các hình thức:
JohnredBobyellowAlicesilver
Đó là điều hiển nhiên mà trong trường hợp này print
đưa đến màn hình lại tất cả các cặp giá trị quan trọng của băm.
Băm cửa hàng không ra lệnh cặp giá trị. Chạy khác nhau của chương trình sẽ cung cấp khác nhau ra.
print
và biến $,
Nếu bạn chỉ cần xác định print %h;
, nó sẽ in tất cả chìa khóa và giá trị với nhau.
Bạn có thể yêu cầu perl để chèn một biểu tượng giữa các yếu tố. Ví dụ,
các dòng mới nhân vật \n
.
Này, bạn cần phải đặt biểu tượng này trong một đặc biệt biến $,
. Đây là mã:
#!/usr/bin/perl
use strict;
use warnings;
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
$, = "\n";
print %h;
Một trong những kết quả có thể của chương trình (các dữ liệu ở các băm không được ra lệnh, vậy khác nhau chạy sẽ ra những cặp khác để):
Bob
yellow
Alice
silver
John
red
Nhưng phương pháp này cần phải sử dụng một cách cẩn thận. Biến $,
— toàn cầu. Nếu
bạn có thay đổi nó thay đổi, nó sẽ thay đổi toàn bộ chương trình. Trong một số tình huống
có ý nghĩa không sử dụng phương pháp này, hoặc là để lưu trữ các giá trị
biến này trong một biến tạm thời, và sau đó print
trở lại giá trị trong đó,
ví dụ, như vậy:
#!/usr/bin/perl
use strict;
use warnings;
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
my $saved = $,;
$, = "\n";
print %h;
$, = $saved;
Một cách để ra các nội dung của băm trên màn hình đi qua tất cả những giá trị trong băm và in ra màn hình như cần thiết. Đây là một ví dụ về điều này có thể được thực hiện:
#!/usr/bin/perl
use strict;
use warnings;
use feature qw(say);
my %h = (
John => 'red',
Alice => 'silver',
Bob => 'yellow',
);
foreach my $name (sort keys %h) {
say "$name $h{$name}";
}
Đầu của chương trình này là luôn luôn giống nhau:
Alice silver
Bob yellow
John red
Cho cặp giá trị trong băm lệnh là không xác định, nhưng chương trình này sử dụng sort
trật tự
hiển thị các phím theo thứ tự chữ cái.