24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 409  |  回复: 4
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

yalefield

金虫 (文坛精英)

老汉一枚

[交流] 【讨论】刀劈神仙 [转载]

前几天的case:
CODE:
12
23
34
45
56
67

想变成:
CODE:
1223
3445
5667

一般大家都会想到:
CODE:
perl -pe 'chomp if $. % 2' file

这个最直观易懂。但是Randal(Perl hacker,教育家)给出这个方法:
CODE:
perl -pe 'chomp; $_ .= <>' file

这个实现得更巧妙,且没有取余运算,效率会更高。
后来John W.(another Perl hacker)秀了一个更smart的方法:
CODE:
perl -lpe '$\=--$|?$,:$/' file

代码写到这样就是神仙了~~ 反正偶一时半会没看明白~~
我也读过大小骆驼呀、高级编程啥的也读过一堆呀,怎么就想不到呢?
达到这一级,除了经验外,更多的是靠冰雪玲珑心了~~
--对,一定要有一颗玲珑的慧心~~
看看“Just another Perl hacker”有多少种写法就知道了。
神仙的代码一般人是看不懂的,好在有懂的人出来点拨:
CODE:
--$|   toggles between 1 and 0. It is this variable's behavior when (--$| or $|--)
       $| is initially 0. (NOTE: this behavior doesn't happen with ++$| or $|++).
-l      chomps the line input and, for when --$| == 1, prints with $\ = $,
      ($, is by default the empty string). When --$| == 0, prints with $\ = $/
       ($/ is by default = "\n").
-p     applies 'print()' as the last statement in the implicit 'while( ... )'  loop
So. in effect, on the first line in, chomps the line. Then, since $|==1 in the first
iteration, prints with a line end equal to $, (by default, the empty string).
In the next line, $| will equal 0, so the print will end with $/ (default value of "\n")

谁要是在我的组里用这种代码,我一定用刀劈他!
http://bbs2.chinaunix.net/viewthread.php?tid=1622036

[ Last edited by jjdg on 2010-1-4 at 21:08 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

波不动

木虫 (正式写手)

Wave No Move


小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by wangen994 at 2009-12-5 23:03:
这个是真看不懂,自己知道的太少了

我也一样,呵呵。
端好自己的碗,吃好自己的饭。
4楼2009-12-05 23:06:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

nebulaly

木虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
波不动(金币+1,VIP+0):感谢讨论交流!有时候例如微软面试也会出一些类似的题目,但答得“差”,有时候反而是微软要的。 12-5 23:01
这个叫杂技

如果是开发产品,最好的写法永远是第一种
2楼2009-12-05 22:48:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangen994

荣誉版主 (著名写手)

将军

这个是真看不懂,自己知道的太少了
3楼2009-12-05 23:03:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

runmiao

铁杆木虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
这个只能秀一下,咱还是老老实实做软件蓝领,写的代码别人能立马看懂,不用太多注释。
5楼2009-12-12 10:49:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0856求调剂 +7 楒桉 2026-03-28 7/350 2026-03-29 08:28 by fmesaito
[考研] 数一英一271专硕(085401)求调剂,可跨 +7 前行必有光 2026-03-28 8/400 2026-03-28 23:22 by 小木虫tim
[考研] 本科新能源科学与工程,一志愿华理能动285求调剂 +7 AZMK 2026-03-28 11/550 2026-03-28 21:01 by xxxsssccc
[考研] 一志愿华理,数一英一285求A区调剂 +8 AZMK 2026-03-25 12/600 2026-03-28 18:15 by AZMK
[考研] 304求调剂 +6 曼殊2266 2026-03-27 6/300 2026-03-28 14:10 by 唐沐儿
[考研] 266分,求材料冶金能源化工等调剂 +7 哇呼哼呼哼 2026-03-27 9/450 2026-03-28 12:22 by zllcz
[考研] 调剂 +3 好好读书。 2026-03-28 3/150 2026-03-28 12:04 by 王保杰33
[材料工程] 一志愿C9材料与化工专业总分300求调剂 +8 曼111 2026-03-24 9/450 2026-03-28 07:58 by YYYYX1234
[考研] 331环境科学与工程求调剂 +3 熠然好运气 2026-03-27 3/150 2026-03-28 04:11 by fmesaito
[考研] 266求调剂 +11 阳阳哇塞 2026-03-27 12/600 2026-03-27 17:56 by yu221
[考研] 085600,材料与化工321分,求调剂 +9 大馋小子 2026-03-27 9/450 2026-03-27 14:30 by mmm just
[考研] 085600,材料与化工321分调剂 +4 大馋小子 2026-03-27 6/300 2026-03-27 14:11 by 松花缸1201
[考研] 305求调剂 +5 哇卢卡库 2026-03-26 5/250 2026-03-27 14:01 by laoshidan
[考研] 322求调剂 +4 我真的很想学习 2026-03-23 4/200 2026-03-27 13:51 by 杨杨杨紫
[考研] 材料求调剂 +5 .m.. 2026-03-25 5/250 2026-03-27 11:08 by 不吃魚的貓
[考研] 【双一流院校新能源、环境材料,材料加工与模拟招收大量调剂】 +4 Higraduate 2026-03-22 8/400 2026-03-26 20:34 by Higraduate
[考研] 中国科学院深圳先进技术研究院-光纤传感课题组招生-中国科学院大学、深圳理工大学联培 +5 YangTyu1 2026-03-26 5/250 2026-03-26 18:27 by 猫咪猫咪呀
[考研] 332求调剂 +6 032500 2026-03-25 6/300 2026-03-25 22:45 by 418490947
[考研] 284求调剂 +15 Zhao anqi 2026-03-22 15/750 2026-03-25 12:51 by wht0531
[考研] 361求调剂 +3 Glack 2026-03-22 3/150 2026-03-23 22:03 by fuyu_
信息提示
请填处理意见