2020-04-02

Perl-小骆驼书~学习笔记

Perl的逻辑:丑则丑矣,效率高啊。吃苦能干,小骆驼也!

[TOC]

1.标量数据

标量scalar包含数字和字符串。

1.1 数字

数字内部格式为双精度浮点型

  • 直接量 literal:直接键入程序源代码中的数据。

  • 浮点型直接量

  • 整数型直接量

    • 其他进制
      • 十进制 255
      • 十六进制 0xFF
      • 八进制 0377
      • 二进制 0b11111111
    • 太长时可加入下划线
      • 0x1377_0B77
      • 61_298_121
  • 操作符

    • 取模%:先取整再取余数。

      取整:小于1为0,如4.8为4

    • 取整:小于1为0

      • 10%3=1
      • 10.5%3.1=1
    • 乘幂**

1.2 字符串

  • ASCII字符范围以外的字符,需要use utf8
  • Single-quoted string literal:'就是表面看起来那样,顶多转义一个 \ ' ,其他的都是字符'
  • double-quoted string literal:"可以加入变量和转义\n啥的"

转义:

意义 组合 意义 组合 意义 组合
换行 \n 回车 \r 制表符 \t
换页 \f 退格 \b 响铃 \a
ctrl+c \cC 反斜线 \ \
  • 操作符
    • 点符."asd"."ee"=="asdee"
    • 重复x"fe"x3=="fefefe"
      • :a:attention: 5x4.8"5555"

1.3 字符串和数字的混用

Perl根据操作符来确定数字还是字符串

"123"+"456" #123+456=579
"123ef245"+"456" #123+456=579
"123"."456" #"123456"

1.4 标量变量

$开头,标识符的开头为_或字母,不能是数字开头。

$意味取"单个东西"或取"标量"

  • 使用utf8之后,变量名也可为其他的非ASCII字符$汉字="我爱中国";

  • 赋值

a=5;a=a+5;a*=5;




* 变量内插

```perl
$handsome="handsome very much\n";
$xiu="we are $handsome";
#或则用.串联起来
$xiu='we are'.$handsome;

1.5 print

  • 默认为STDOUT,即标准输出,输出到屏幕。
print "hello world\n";
print 6*7;
print "My","English is so",6,"!\n";
#变量的输出
print $handsome;

1.5.1 内插歧义的避免

在变量后面接上字符容易歧义

$a="123";
#变量后面接字母、数字、下划线
print "$as" #error
print "${a}s" #123s
#变量后面接方括号、花括号、冒号、引号等,可将他们加斜线
print "$a\[ss]" #123[ss]
print "${a}[ss]" #123[ss]

1.5.2 代码点code point和字符的转换

基于utf8,有很多字符超出ASCII字符表。code point记录字符的十六进制“ID”,请允许我这么叫。它和字符之间是一一对应的关系的。

  • code point到字符:chr(code point)
$omega=chr(0x03C9)
  • 字符到code point:ord('字符')
use utf8;
$顿号=ord('、');
  • 直接用双引号:\x{03B1}
#αω\n
print "\x{03B1}\x{03C9}\n";

1.6 操作符

操作符 结合性 注释
++,--,** 自增,自减,自乘
=~,! ~
  • 比较操作符
意义 数字大小比较 字符串比较
相等 == eq
不等 != ne
小于 < lt
大于 > gt
小于等于 <= le
大于等于 >= ge

1.7 if控制结构和while循环结构

与其他语言类似,略

1.8

1.8.1 用户输入<STDIN>

$get_in=<STDIN>;

1.8.2 chomp操作符

去除最后面的\n,若无则不处理

#去除输入的回车,并赋给$get_in
#chomp返回值为0或1,所以一般将他视为
chomp($get_in=<STDIN>);

1.8.3 undef

当做数字时视为0,当做字符串时视为空字符串""

  • 应用: 当一个变量未被定义就被使用,他就被定义为undef,使得程序得以继续运行(正常需要定义的这个变量的)。
  • 也可自己创建undef$a=undef

1.8.4 defined函数-判断字符串是否为空

  • 返回逻辑值
if(defined($a)){
    print "aaa\n";
}else{
    print "hhha\n";
}

1.9 章后作业

  • 1-3题
#!/usr/bin/perl -w
use utf8;
print "请输入半径:\n";
$banjing=<STDIN>;
if($banjing<0){
  print "周长是:\n0\n";
}else{
  $pai=3.141592654;
  $zhouchang=$banjing*2*$pai; 
  print "周长是:\n$zhouchang\n";
}
  • 4-5题
#!/usr/bin/perl -w
use utf8;
print "请输入字符串:\n";
$chars=<STDIN>;
print "请输入数字:\n";
$num=<STDIN>;
print "they are :\n";
while($num){
  print $chars;
  $num--;
}
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容

  • 尊敬的利贞老师好芳伦老师好,蔡老师好,尊敬的家人们,大家下午好。是来自广西桂平的子湘妈妈,两个小宝的妈妈。很高兴今...
    梁杏丽阅读 415评论 0 1
  • 家名:幸福之家 家风:行孝,行善,诚信,感恩 家规:赞美,欣赏,微笑 365天穿越奇迹分享,第262天 使命:自我...
    谨言慎行_1b9a阅读 190评论 0 0
  • 坚持分享第170天。 今天读了《做最好的老师》第五章班主任工作,学李老师写评语,确实写评语是一件苦差事,以...
    一祉微笑阅读 512评论 0 0
  • 走进商场,可以看到星巴克旁边奈雪的茶,或者说奈雪的茶旁边的星巴克。已经很难说出其中的先后顺序,奈雪的茶是近几年推出...
    小城雨田阅读 128评论 0 1
  • 在未来的二十天 要再瘦十斤 嗯 我应该 可以的 加油 因为瘦瘦的妹子 果然很好看(捂脸)
    夏浅xq阅读 78评论 0 0