perl面试题解析
发布时间:2020-12-15 21:07:10 所属栏目:大数据 来源:网络整理
导读:数据分析 检测系统某一目录下是否存在文件a.txt,有的话,则mv成新的文件,没有,则创建它,并向文件中输入以下数字: 1???????0???????12???????1???????13???????0???????1?4???????1???????1?5???????0???????1?6???????1???????1?7???????0???????1?8????
数据分析 检测系统某一目录下是否存在文件a.txt,有的话,则mv成新的文件,没有,则创建它,并向文件中输入以下数字: 1???????0???????1 2???????1???????1 3???????0???????1? 4???????1???????1? 5???????0???????1? 6???????1???????1? 7???????0???????1? 8???????1???????1 ? 面试中,对这个题目产生了歧义,一时紧张,竟然不知从何下手。回来仔细一想,so easy! 1)出题者的本意解法 #!/bin/env?perl?? use?strict;? if?(-e?'a.txt')?{??? ?system?"mv?a.txt?a.txt.old";? ?} ??else?{???? ??system?"touch?a.txt";?}?? ?? ??open?my?$file,'>>','a.txt'?or?die?"$!n";?? ??for(my?$i=1;$i<9;$i++){??? ?????if?($i?%?2)?{?????? ????????print?$file?"$it0t1n";?????}???? ?????????else?{????????? ?????????print?$file?"$it1t1n";??? ???????????}? } 2)产生歧义的解法 #!/bin/env?perl?? use?strict;?? if?(-e?'a.txt')?{??? ????system?"mv?a.txt?a.txt.old";? } ?else?{????system?"touch?a.txt";? ?}?? ? ?open?my?$file,'a.txt'?or?die?"$!n";? ? ??print?$file?<<'EOF';? ??1???????0???????1? ??2???????1???????1? ??3???????0???????1? ??4???????1???????1? ??5???????0???????1? ??6???????1???????1? ??7???????0???????1? ??8???????1???????1? ??EOF?? ?? ??close?$file; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |