上一篇之后大家应该会自己写一个读文件的代码了,今天打算介绍写文件。在这里说明一下,如果大家曾经有看过perl的一些学习资料会发现他们都是按顺序介绍变量,条件语句,运算符等等,但我直接就介绍的是读写文件可能会认为有点快。因为我觉得这样太枯草而且很多时候我们都很少去接触到,而我写的出发点是带大家看懂生信的perl,更牛逼的看完能够自己抄一个perl脚本出来。所以大家只要把我每一篇的重点都看懂了我可以肯定的是,不出两周你肯定可以看懂绝大部分的生信代码.(如果能坚持每天写一篇的情况下)。
生信的脚本套路我认为都是一个流程,这个也算是我们写代码的一个思路。大家可以看一下下图由此可以知道读写文件的重要性了。

这里再说一下只读文件中的数据只需要open(文件句柄,"文件名"),但如果要写文件我们就要用open(文件句柄,"+>文件名")或open(文件句柄,">>文件名"),只是一个是追加模式,一个是删除后再写。那再唠叨一句,我们需要分析的数据是输入数据,一般建议只读模式打开这样可以确保我们的数据不会因为误操作而导致输入的数据都没了,输出的结果倒是可以看情况而选择。
会了读文件,写文件真的很简单,只需要再掌握一个print()函数的用法即可。所以我们今天介绍的重点就是它。
常用的几种用法
1.用于打印到终端
可以理解为把一些变量的内容打印出来,这样我们就可以知道它究竟里面是什么东西。(一般用于检查我们提取的东西内容)
my %hash;my $name ="小明";my $age = 18;my @grede;$grede[0]=95.5;$hash{$name}='英语';print "$name今年$age岁\n";print "$name$hash{ $name}成绩$grede[0]分\n";
D:\我的坚果云\笔记\wechat\perl>perl test.pl小明今年18岁小明英语成绩95.5分
格式: print"你想打印的内容"; 注意perl所有的标点符号都必须为英文的标点符号。很简单只需要记住双引号里面就是你想输出的内容,记住三种变量的打印方式就完事了。
2.用于把数据写到文件
格式 print 文件句柄 "你想打印的内容";
你没看错就是这么简单如果要把内容写到文件就只需要在第一个双引号前加上文件句柄就完事了.
open(WF,"+>$Write_file") or die $!;print WF "$name今年$age岁\n";print WF "$name$hash{ $name}成绩$grede[0]分\n";
详细的读写文件模板可以在公众号精华处自提。这个模板大家现在应该可以完全看懂,如果还不清楚那需要重温一下前两篇内容。
3.用于调试程序
这个重点了,很多人都遇到程序有问题但又不知道哪里出问题这时候它就可以用上场了,程序去处理也是一行一行去运行所以当有问题的时候我们首先读一下程序,自我感觉哪一行出问题了我们就在哪一行前面加一个打印,调试一下到底程序有没有运行到这步或者是这步的值是不是有问题,慢慢去排查自然就会知道问题在哪啦。
总结总结,今天那么多废话其实就只介绍了一个print函数应该也不难,但大家已经具备了读写文件的能力。当大家再去了解一些运算的用法和循环的语句大家就可以完全看懂生信的脚本甚至写一个,所以其实perl真的不难。加油各位小伙伴!




