【问题标题】:Perl: How to use map to project an array of pairs to an array of first elementsPerl:如何使用 map 将一对数组投影到第一个元素的数组
【发布时间】:2015-01-05 10:28:02
【问题描述】:

我有这个简单的代码:

 perl -e '@A=([1,2],[3,4]); @B=map {$_[0]} @A; print @B'

我的目标是进行转型:

([1,2],[3,4]) -> (1,3)

代码没有输出。我在这里做错了什么?

【问题讨论】:

    标签: arrays perl list


    【解决方案1】:

    你必须取消引用:

    perl -e '@A = ([1, 2], [3, 4]); @B = map { $_->[0] } @A; print @B'
                                                 ^^
    

    检查

    【讨论】:

    • 别忘了启用警告
    • 我几天前才开始使用 Perl(顺便说一句,被它的厉害吓到了!!),所以不熟悉警告。有些用例会很棒!
    • @vervenumen:只需将 -w 添加到您的原始代码中,看看它会告诉您什么。
    • @vervenumen 肯定读过docs that come with Perl(我最初是通过阅读文档和语法错误消息来学习 Perl)。
    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 2017-01-29
    • 2012-06-22
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    • 2014-07-07
    • 2021-08-06
    相关资源
    最近更新 更多