Perl学习笔记-9(切片)

列表切片必须在()的后边有一个[]。函数为引入参数而使用的()不算。

  • 基本用法
my $mtime=(stat $some_file)[9];  #第10列
my $work=(split /:/)[3];
my ($name, $age)=(split /:/)[1, 5];
my ($first, $last)=(sort $info)[0, -1];
my @nums=(@names)[1, 7, 5, 2, 1, 1, 0];
  • 数组切片
my @nums=@names[9,0,3,1,0];  #注$names[3]只能引用单个元素

数组切片可以在双引号中内插。

print "There are @names[7,2,3,2,1]";

数组切片的赋值

@addrs[1,3]=($addr1, $addr2);
  • 哈希切片
设有%names
my @alias=($names{'zhangsan'}, $names{'lisi'}, $names{'wangwu'});
my @alias=@names{ qw/ zhangsan lisi wangwu / };  #切片一定是列表,@可以表示列表

切片赋值

设有%score
my @players=qw/zhansan lisi wangwu/;
my @tips=(131, 120, 111);
@score{ @players }=@tips;
print "Some players: @score{@players}\n";  #可以内插
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值