【问题标题】:How can I add repeated values to an array in Perl?如何在 Perl 中将重复值添加到数组中?
【发布时间】:2011-04-21 08:01:18
【问题描述】:

我有一个数组 @genotypes = "TT AG TT AG...." 并想向它添加一个尖峰(例如 20 x TT)以创建一个新数组。

我显然可以push"TT" 进入数组 20 次 - 但是有没有更简单的方法呢? (即不是@newarray = push @genotypes ("TT", "TT", "TT",......20 times!);

【问题讨论】:

    标签: arrays perl


    【解决方案1】:
    @newlist = (@genotypes, ('TT') x 20);
    

    是的,它是x

    Multiplicative Operators in perldoc perlop

    【讨论】:

      【解决方案2】:

      重复操作符是最明显的方式。
      你也可以使用map:

      @newarray = (@genotypes, map 'TT', 1..20);
      

      【讨论】:

        【解决方案3】:

        还有foreach 将多个相同值推送到数组的方式:

        push @newarray, 'TT' foreach (1..20);
        

        【讨论】:

        • 还有更短的形式push @newarray, 'TT' for (1..20);
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-06-10
        • 2014-08-07
        • 1970-01-01
        • 1970-01-01
        • 2011-12-18
        • 2014-08-29
        • 2010-11-04
        相关资源
        最近更新 更多