Perl-05---上下文

Perl的上下文特性使得运算和值的解释依赖于上下文环境,分为标量上下文和列表上下文。标量上下文使表达式返回单个值,而列表上下文返回值的列表。上下文影响数据的运算方式、赋值语句、函数参数和返回值。例如,int(<STDIN>)在标量上下文中读取并转换输入的第一个整数,而sort(<STDIN>)在列表上下文中对所有输入进行排序。列表是标量值的集合,子程序可以考虑调用时的上下文,Perl解释器会自动处理子列表的解析和转换。
摘要由CSDN通过智能技术生成

Perl是上下文相关的,与很多其它语言有所不同。Perl中的运算和值的解释有时候依赖于围绕此运算或值的上下文。上下文包括数字、字符串、列表和标量。最常用到的有两种上下文:标量上下文列表上下文

返回列表值的运算需要一个列表,标量也一样。也就是说,Perl基于期望的返回值是单数还是复数来重载一定的运算。在标量上下文中,所求的表达式返回一个标量值;而在列表上下文中,所求的表达式返回一个标量值的列表。这就是两者之间的区别。

标量上下文对数据是作为数字进行运算还是作为字符串进行运算有影响;而列表上下文则对赋值语句返回的数据以及子程序或系统函数的参数和返回值有影响;

相应地,函数为每一个参数提供一个标量上下文和一个列表上下文。

例1:int(<STDIN>);

这个函数为它的参数提供了一个标量上下文;由于这个函数是要把它的参数转换成一个整数,只需要一个标量参数就可以了,所以,<STDIN>操作就只读进去一个标量数据作为参数传递给int(),如果输入了多个数据,则只传递第一个数据给函数int(),并返回转换后的整数标量值。

例2:sort(<STDIN>);

这个函数是对一个列表中的元素进行排序,它需要一个列表作为参数来操作,所以这个函数为<STDIN>操作提供了一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值