Perl 列表与数组(二)

2021-06-08  本文已影响0人  PETJO

5. 列表直接量

#!/usr/bin/perl

use strict;
use warnings;

print (1,2,3);
print "\n\n\n";

print (1,2,3,);                # 逗号被忽略
print "\n\n\n";

print ("a","b","c");
print "\n\n\n";

print ("a",1,"b",2,"c",3);
print "\n\n\n";

print ();                      # 空列表 
print "\n\n\n";

print (1..10);
print "\n\n\n";

print (10..5);                 # 范围操作符从大到小,得到空列表
print "\n\n\n";

print (1.3..10.6);             # 小数点部分去掉后取范围
print "\n\n\n";

print ("a".."f");              # 字母取范围值
print "\n\n\n";

print (1,4..10,16);
print "\n\n\n";

my $m = 5;
my $n = 15;
print ($m,10);                 # 表达式当前值
print "\n\n\n";

print ($m,$n);
print "\n\n\n";

print ($m..$n);
print "\n\n\n";

6. qw简写

#!/usr/bin/perl

use strict;
use warnings;

my @array = ("fred", "barney", "betty", "wilma", "dino");
print "@array\n-----\n";

my @array_qw = qw( fred barney betty wilma dino );
print "@array_qw\n\n\n";

my @array_qw1 = qw[ fred barney betty wilma dino ];
my @array_qw2 = qw# fred barney betty wilma dino #;
my @array_qw3 = qw! fred barney betty wilma dino !;
my @array_qw4 = qw[ fred barney betty wilma dino ];
my @array_qw5 = qw[ fred barney betty wilma dino ];
print "@array_qw1\n\n\n";
print "@array_qw2\n\n\n";
print "@array_qw3\n\n\n";
print "@array_qw4\n\n\n";
print "@array_qw5\n\n\n";

# 抛弃空白字符
my @array_qw6 = 
qw(
    fred    
    barney 
    betty 
    wilma 
    dino
);
print "@array_qw6 \n\n\n";

# qw列表中无法进行注释,#,\n,$等都为普通字符
my $fred = "fred";
my @array_qw7 = 
qw(
    $fred    # name
    \n
    barney 
    betty 
    wilma 
    dino
);
print "@array_qw7 \n\n\n";

7. 列表的赋值

# 列表值赋值到标量变量
my($fred, $barney, $dino) = ("flinstone", "rubble", undef);
print $fred . "\n";
print $barney . "\n";
print $dino . "\n";

# 交换两个变量的值
($fred, $barney) = ($barney, $fred);
print $fred . "\n";
print $barney . "\n";

my @betty;
$betty[0] = "age";
$betty[1] = "year";
($betty[0], $betty[1]) = ($betty[1], $betty[0]);
print $betty[0] . "\n";
print $betty[1] . "\n";

($fred, $barney) = qw{ slate granite flintstone rubble }; #忽略末尾2个元素
print $fred . "\n";
print $barney . "\n";

my ($wilma, $dino1) = qw{ flintstone };    # dino的值为undef
print $dino1 . "\n";

my @rock;
($rock[0], $rock[1], $rock[2], $rock[3]) = qw{ talc mica feldspar quartz };
print "@rock\n";
上一篇 下一篇

猜你喜欢

热点阅读