记得点击蓝字关注我们哦!01

上期回顾

  • Perl变量主要有三种类型:变量(标量型变量)、数组、哈希

  • 标量型变量含有单个值标量型变量的前缀是$

  • 变量名是大小写敏感

  • 变量是以字母开头的,则它可以由任意数目的字母(下划线也算作字母)或数字构成

02

数组

Perl并不要求数组元素具有相同的数据类型。数组元素可以是数字和字符串的混合体。在Perl中,数组是一个有名字的列表,含有有序的标量型变量集合。数组名必须以@开头。数组名的后面是位于方括号([ ])之间的下标,它们都是非负整数,从0开始计数

在初始化数组时,用户可以把所有元素放在括号中,并以逗号分隔它们。

也可以用qw创建列表(类似于qq、q 和qx)。列表中各项内容将作为带有单引号的字符串来处理。

# 使用一个含有4个字符串的列表,对数组@name 进行初始化@name=("Guy", "Tom", "Dan", "Roy");# 创建数组@grades, 将(100, 90, 65, 96, 40, 75)列表赋值给数组@grades@grades=(100, 90, 65, 96, 40, 75);# 创建数组@items, 将($a, $b, $c)列表赋值给数组@grades@items=($a, $b, $c);# 创建空数组@empty@empty=();# 将数组@items赋值给一个标量型变量$size。该标量的值将是数组中的元素个数# 在本例中,其值等于3$size=@items;# 创建数组@list,从2到10的所有整数列表赋值给数组@list# .. 为范围运算符,类似如下例,表示A-Z,a-z# @alpha=( 'A' .. 'Z', 'a' .. 'z' );@list=(2..10);# qw(引用字)结构后面跟随选定的定界符。# 列表中每个字都作为带有单引号的字来对待。末尾的定界符说明列表到此结束# qw 结构支持任何成对的字符如()、{}、<> 和[] 作为定界符@mammals = qw/dogs cats cows/;@fruit = qw(apples pears peaches);

上图中表示一个含有5个元素的列表。其中元素下面对应的数字,即元素下标。如上所述,下标从0开始计数。元素上面为元素对应倒序下标。

(1)访问列表中的值

# Populating an array and printing its values@fruits = ('apple','banana','watermelon','orange');print "The index 0 element of the array is $fruits[0]\n"; print "The index -5 element of the array is $fruits[-5]\n";print "the second element is $fruits[1]\n";print "the second element is $fruits[-4]\n";__END__(Output)The index 0 element of the array is appleThe index -5 element of the array is applethe second element is bananathe second element is banana

(2)列表删除元素

# shift函数弹出数组的第一个元素,即下标为0的元素shift @fruits;# 此时 @fruits = ('banana','watermelon',,'orange')########################################################### pop函数会删除并返回数组的最后一个元素pop @fruits;# 此时@fruits = ('banana','watermelon')

(3)列表添加元素

# 使用push函数,在数组@fruits中,添加"pineapple"元素push @fruits,"pineapple";# 此时@fruits = ('banana','watermelon','pineapple')#################################################### unshift函数传入一个或多个值(或者0个) 并把它放在数组的开头unshift @fruits, 'Moo';# 此时@fruits = ('Moo','banana','watermelon','pineapple')

(4)更新列表

# 通过元素下标进行修改# 修改前# @fruits = ('Moo','banana','watermelon','pineapple')$fruits[0] = 'pear';# 修改后# @fruits = ('pear','banana','watermelon','pineapple')

03

总结

  • 数组是一个有序的列表

  • 数组名以@开头

  • 数组下标以0开始,倒序下标从左向右以-1开始

  • 通过数组元素下标访问元素,更新元素

  • 通过shift、pop函数删除数组元素

  • 通过unshift、push函数数组添加元素

—END—上期推荐阅读@

perl 第五弹 变量 I

perl 字符串删除末尾几个字符_perl 第六弹 变量 II相关推荐

  1. perl 字符串删除末尾几个字符_Perl字符串处理函数大全

    本文重点讨论Perl字符串处理函数的用法,每种函数都有各自的特点和作用, 下面请看本文详细介绍. Perl字符串处理函数 1. index 语法: position=index(string,subs ...

  2. perl 字符串删除末尾几个字符_perl中的字符串操作函数chomp与chop介绍

    chomp与chop都是用于去除字符串变量尾部的字符,但它们有各自的区别. chomp函数对变量起作用,而此变量含有字符串.如果字符串结尾有换行符,chomp可以去掉它.这基本上就是它能完成的所有功能 ...

  3. linux字符串删除后几个字符,linux系统删除开头几个字符或者结尾几个字符

    1.创建测试数据 [root@linuxprobe test3]# cat a.txt wrwrt fdgsaf fsads gdfgde fsddd dffgdf sfdef sdfdsg 2. [ ...

  4. Python rstrip()方法 删除 string 字符串末尾的指定字符(默认为空格).

    Python rstrip()方法  Python 字符串 描述 Python rstrip() 删除 string 字符串末尾的指定字符(默认为空格). 语法 rstrip()方法语法: str.r ...

  5. Python中删除字符串末尾的指定字符rstrip()方法

    [太阳]选择题 以下python代码输出什么? myString = "www.liujingwei.cncn" myResult = myString.rstrip(" ...

  6. Perl中删除或替换字符串中特殊字符(如空格)的方法

    今天在写实验代码的时候,突然有了这样一个需求,就是用Perl将包含换行(或回车)的字符串变成一行,并且每一行用空格分隔,经过搜索,网友介绍了这样的写法: [plain] view plaincopy ...

  7. 学习笔记——C#字符串删除字符

    方法1:s = s.Substring(0,s.Length - 1):删除字符串最后一个字符 : s = s.Substring(0,s.Length - 1) 延伸: (1)String.Subs ...

  8. c语言 字符串数组末尾,C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符...

    利用宏定义一个字符串#define MYPHONE "AT+CMGS" 字符数组的方式来定义一个字符串unsigned char SMS[]="HELLO, WELCOM ...

  9. python删除字符串_Python3 - 删除字符串中不需要的字符

    问题 去掉文本字符串开头,结尾或者中间不想要的字符,比如空白. 解决方案 strip() 方法用于删除字符串开始或结尾的字符. lstrip() 和 rstrip() 分别从左和从右执行删除操作. 默 ...

最新文章

  1. Java数据结构——解析算术表达式
  2. LEACH分簇算法实现和能量控制算法实现
  3. 贝叶斯学习及共轭先验
  4. ajax请求url 绝对路径与相对路径
  5. UITextFeild的基本属性
  6. 奥鹏17计算机应用基础离线,奥鹏《计算机应用基础》离线
  7. 串行口通信c语言代码,问一下单片机串行口通信用c语言实现的问题
  8. 西湖大学生命学院章永登实验室 (超分辨成像)科研团队招聘启事
  9. 每日源码分析 - Lodash(remove.js)
  10. oracle JOB 查询 添加 修改 删除
  11. 检查和变异可查询表达式树
  12. 解决许可证兼容性问题,Ubuntu 内核将内置 ZFS
  13. Oracle分析函数、多维函数和Model函数简要说明,主要针对BI报表统计
  14. 学习共享--产品思维
  15. [转载] 2012年上半年信管网论文复习建议
  16. 取代SharedPreferences的多进程解决方案
  17. Hi3559AV100的MPP系统绑定实现
  18. 大数(小于10000)N的阶乘准确值(效率)
  19. 怎样修改管家婆服务器密码,管家婆辉煌版如何设置权限和修改操作员密码口令...
  20. 把所有数据库厂商拉在一起,会发生什么?

热门文章

  1. JPA与Hibernate的优缺点
  2. Linux内核的同步机制
  3. mysql+join的原理,Mysql连接join查询原理知识点
  4. java is instance of_详谈Java中instanceof和isInstance的区别
  5. python拼图游戏编码_教你用Python自制拼图小游戏,轻松搞定熊孩子
  6. Python稳基修炼的经典案例5(计算机二级、初学者必须掌握的例题)
  7. python字符串索引位置替换 不搞虚的 直上代码
  8. 枚举算法:概率计算。在标注编号分别为1,2,...,n的n张牌中抽取3张,试求抽出3张牌编号之和为素数的概率。输入整数n(3<n<=3000),输出对应的概率(四舍五入到小数点后第3位)。
  9. Python使用Condition对象实现多线程同步
  10. cad插件制作教程_CAD电子签名制作教程