加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl语言入门(第五版) 读书笔记(一)---列表、数组、子程序

发布时间:2020-12-16 00:04:28 所属栏目:大数据 来源:网络整理
导读:? 第二章 标量数据 (数字和字符串) 1. 点(.)字符串连接运算符,小写字母x为字符串重复运算符; 2. hex()、oct()转换字符串; 3. chomp()移除字符串行尾的换行符; 第三章 列表与数组 1. 数组和列表的定义方法: 2. $size = $#array 获取数组array的个数

?

第二章 标量数据(数字和字符串)
1. 点(.)字符串连接运算符,小写字母x为字符串重复运算符;
2. hex()、oct()转换字符串;
3. chomp()移除字符串行尾的换行符;

第三章 列表与数组
1. 数组和列表的定义方法:
2. $size = $#array 获取数组array的个数,最后一个元素的索引
3. 列表 qw(one two three ),? qw{/usr/bin /usr/local/bin},? !、/、#、()、{}、[]、<>都可以作为qw的分隔符。
4. 赋值:
($one,$two)= ("abc","efg")
($one,$two)=? qw[/usr/bin /usr/local/bin]
???????? ($one,$two)= ($two,$one)交换
????????? @array = qw(one two three )
???? @array = ("abc",@other,$one)
????????? @array = 1..10?? 添加10个元素
5. push和pop在数组尾端操作
???????? push(@array,8);?? $one = pop(@array)
6. shift和unshift在数组头部操作
???????? unshift(@array,8);?? $one = shift(@array)
7. reverse()反转列表或数组
???????? @abc = reverse 1..5???? @abc = reverse(@abc)
8.sort()字符串排序列表或数组
???????? @num = sort(@num)???? @num = sort 97..102 #按字符串排序
9. foreach循环????? foreach $rock (@rocks)? { print $rock.”n”;}
10. $_代表“老地方”??? foreach(@rocks) {print $_.”n”;}
11. 列表上下文(列表、数组、哈希)与标量上下文
???????? @people = qw(fred barney betty)
???????? @sorted = sort @people #列表上下文 barney,betty,fred
???????? $num = 42 + @people #标量上下文,得到42+3=45
???????? @list = @people #得到数组
???????? $num = @people #得到3
sort函数标量上下文为undef
$backword = reverse qw/abc efg/? #得到gfecba
scalar强制引入标量上下文? scalar(@rocks) 返回数组个数
12. 内插变量输出变量名要用转义或用单引号:
print "@rocks? $rock"; # 输出"@rocks $rock"
print ‘@rocks? $rock’;

第四章 子程序 1. use strict; #严格编译 use warnings; #输出警告 2. perl函数都有返回值,默认为return $_; 3. 函数定义与调用 sub proc { ???? my @array = $_; ???? @array = sort @array; ???? return @array; } @sorted = &proc(abc,efg); 4. 调用函数时,一般可省略&号;如果和内置函数重名,不能省略与号(&) 5. 持续私有变量用state定义,多次调用保留上次的值,列表上下文初始化不支持state.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读