亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

perl變量做為數組名怎樣寫?

perl變量做為數組名怎樣寫?

繁花不似錦 2019-04-12 11:06:12
perl變量做為數組名怎樣寫?
查看完整描述

4 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

1. @{....}[...] 先不論這里有沒有寫錯, 但這種表達方式, 

以 @ 開頭, 頭面有 [ ] , 我們叫 array slice 是應該放在等號右手邊的

1

2

3

4

5

@arr0 = (0..10)

@arr1 = @arr0[1..2]; # @arr1 = 1, 2

 

$x = [ 1..10 ];

@y = @{$x}[1,2]; # @y = 1, 2

這里你放到了左手邊, 自然就不對了

2. 然後, @{line.... 這里就少了個 $ 應該寫成 @{$line ....

3. 最後, 我想你真正想做到的效果應該是

1

2

3

$line->[$j][$i] = $eachline; # Array of Array

#又或者

$line->{$j}[$i] = $eachline; # Hash of Array

 


查看完整回答
反對 回復 2019-04-13
?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

#! /usr/bin/perl
use strict;
use warnings;

my @array = (0 .. 9);
my $tmp = 10;
print "@array\n";
push(@array,$tmp);
print "@array\n";
@array = $tmp + 1;
print "@array\n";

-------------------------------------------------
輸出:
C:\Users\Hunter\Documents\Perl>perl 17.pl
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9 10
11

C:\Users\Hunter\Documents\Perl>

查看完整回答
反對 回復 2019-04-13
?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

可以試一下這幾種方式,每種方式各有優劣:

#!/bin/perl -w
use strict;
my @arr = ( "aaa","bbb","ccc","ddd","eee","fff"); # 這個是數組
my $vv = "ddd"; # 這個是要查找的變量

# 方法1,:使用類似c語言的風格,遍歷這個數組,查找變量是否匹配。
foreach ( @arr)
{
if( $vv eq $_ )
{
print "$vv\n"
}
}

#方法2:使用map,查找數組中是否含有該變量
map { if($vv eq $_) { print "$vv\n"} } @arr;

#方法3:使用grep,查找數組中是否含有該變量
print( grep /^$vv$/, @arr );




查看完整回答
反對 回復 2019-04-13
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

my @m=(0,1);
$m[0]=1;指定位置1 0 1
push @m,2;尾部添加1 0 1 2
unshift @m,3;頭部添加3 1 0 1 2
$m[1..3]=(3,5,8);多位置修改3 3 5 8 2
splice將制定位置移除并可進行替換

查看完整回答
反對 回復 2019-04-13
  • 4 回答
  • 0 關注
  • 1403 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號