`
standalone
  • 浏览: 613049 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

别人总结的perl技巧

    博客分类:
  • perl
阅读更多

1. 用eval获得程序的执行错误
$a = 10;
$b = 0;
$c = $a/$b;
会发生什么?
程序会crash,因为有浮点数异常。用eval就可以做到两全,既执行语言,又能在出现异常的时候不crash
$a = 10;
$b = 0;
eval {$c = $a/$b};
eval { ... }可以捕获执行的多条语句的错误结果。
然后用$@可以得到错误原因。
#!/usr/bin/perl
$a = 10;
$b = 0;
eval {$c = $a/$b};
if ($@) {
    print "There was a error ($@)\n";
}else {
    print "The result = $c\n";
}

2. 用grep从列表里选取数据
比如, 从1到100中取出所有的奇数
#!/usr/bin/perl
my @odds = grep { $_ % 2 } 1..100;
print "$_ " foreach @odds;

3.用map传递列表的值
比如你已经有了一个列表,如何把列表的每个值作为key建立一个hash?
#!/usr/bin/perl
use Data::Dumper;
my @array = (a, b, c);
my %hash = map { $_ => 1 } @array;
print "hash:  ".Dumper(\%hash);

grep和map有点类似,都是把list的值一一拿出来放进$_,然后执行BLOCK {}中的语言,区别在于:
grep: 返回在BLOCK{}中最后一句执行结果为真的$_
map: 返回在BLOCK{}中最后的一句

4. 选取list中的部分元素
my @array = (a, b, c);
my @new = @array[ 0, 2];
@new中将包含a和c

5. 选取hash中的部分元素
my @three_scores = ($score{"barney"}, $score{"fred"}, $score{"dino"});
my @three_scores = @score{ qw/ barney fred dino/ };

用法@score{ ... }

分享到:
评论

相关推荐

    Perl Programming for Biologists

    学会如何阅读、理解和修改他人编写的Perl脚本是一项非常有用的技能。 - **技巧**:理解变量的作用域、函数的参数传递机制等,这些都是改编脚本的基础。 4. **编写可重用和可维护的脚本**:随着项目规模的增长,...

    软件工程专业毕业实习总结范例.doc

    遇到问题时,应首先独立思考,然后寻求他人帮助,同时要学会总结问题的根源,避免再次出现相同的问题。 在职场中,积极主动的态度也是成功的关键。完成任务后,应主动寻求更具挑战性的项目,这样可以提升自己的技能...

    openkore for cro

    总结来说,OpenKore for CRo是一个强大的自动化工具,它结合了Perl编程和游戏客户端控制,为RO玩家提供了无限可能。然而,使用时需谨慎,遵守游戏规则,享受游戏乐趣的同时,也要保护自己的账号安全。通过深入学习和...

    脚本编程参考

    总结,“脚本编程参考”涵盖的内容广泛,包括脚本语言的基础、应用、语言详解、编程技巧以及相关工具和资源。无论你是初学者还是经验丰富的开发者,都能从中找到提升自己技能的宝贵信息。通过深入学习和实践,你可以...

    Android python教程书籍

    最后一章介绍了如何将Python脚本打包成可分发的应用程序,以及如何将这些应用程序发布到市场供他人下载使用。 #### 五、总结 本书不仅为想要尝试使用Python进行Android开发的新手提供了全面的指导,也为有经验的...

    我的脚本是最牛谁能啊

    根据提供的标题、描述以及部分内容,可以总结出以下与IT相关的知识点: ### 1. 脚本编写基础 从标题“我的脚本是最牛谁能啊”可以看出,作者对其编写的脚本非常自信,并认为它是“最牛”的。这提示我们讨论的话题...

    pythonchallenge level2官方方法集

    以上内容总结了Python Challenge Level2官方方法集中所涵盖的主要知识点,从不同编程语言和方法论的角度出发,探讨了解决复杂问题的各种策略和技术细节。这些知识点不仅加深了我们对Python Challenge挑战的理解,也...

    注释的艺术

    ### 注释的艺术:详解代码注释的重要性与技巧 在编程领域,代码的可读性和维护性是评判软件质量的关键标准之一。《注释的艺术》一文深入探讨了编写高质量注释的方法与原则,旨在帮助程序员提升代码的清晰度,减少...

    经典Git学习资料ProGit

    - **使用GitWeb**:GitWeb是一个用Perl编写的简单Web前端,用于浏览Git仓库。 - **集成到现有Web应用程序中**:可以将GitWeb集成到其他Web应用程序中。 ##### 5.7 Gitosis - **安装Gitosis**:按照官方文档安装...

    比较简单的百度网盘文件直链PHP代码

    虽然这种方法仅适用于特定情况下的临时解决方案,但不失为一种实用技巧,对于那些需要在网页或其他平台直接链接百度网盘文件的开发者来说,具有一定的参考价值。同时,需要注意随着百度网盘官方政策和技术的更新,此...

    测试培训教材

    The VAPI-XP testing tool enables you to create new testing scripts using Microsoft VBScript, Microsoft JavaScript (JScript version), PerlScript, and PythonScript, and integrate these scripts into your...

Global site tag (gtag.js) - Google Analytics