Perl - 变量

首页 / Perl / Variables

解释器根据变量的类型分配内存并确定可以保留内存中存储的内容。因此,通过为变量分配不同的数据类型,可以在这些变量中存储数字或字符串。

创建变量

Perl变量不必显式声明以保留内存空间。为变量分配值时,声明自动发生。等号(=)用于为变量分配值。

请注意,如果在程序中使用 use strict 语句,则在使用变量之前必须先声明该变量。

$age=25;             # An integer assignment
$name="John Paul";   # A string 
$salary=1445.50;     # A floating point

这里的25," John Paul"和1445.50分别是分配给 $age , $name 和 $salary 变量的值。

Scalar 变量

标量是数据的单个单位。该数据可能是整数,浮点数,字符,字符串,段落或整个网页。简单地说,它可以是任何东西,但只能是一件事。

这是一个使用标量变量的简单示例-

#!/usr/bin/perl

$age=25;             # An integer assignment
$name="John Paul";   # A string 
$salary=1445.50;     # A floating point

print "Age=$age\n";
print "Name=$name\n";
print "Salary=$salary\n";

这将产生以下输出-

无涯教程网

Age=25
Name=John Paul
Salary=1445.5

Arrays 变量

数组是一个变量,用于存储标量值的有序列表。 数组变量前面带有“ at”(@)符号。

这是使用数组变量的简单示例-

#!/usr/bin/perl

@ages=(25, 30, 40);             
@names=("John Paul", "Lisa", "Kumar");

print "\$ages[0]=$ages[0]\n";
print "\$ages[1]=$ages[1]\n";
print "\$ages[2]=$ages[2]\n";
print "\$names[0]=$names[0]\n";
print "\$names[1]=$names[1]\n";
print "\$names[2]=$names[2]\n";

这里我们在$符号之前使用转义符号(\)只是为了打印它。其他Perl会将其理解为变量并打印其值。执行后,将产生以下输出-

$ages[0]=25
$ages[1]=30
$ages[2]=40
$names[0]=John Paul
$names[1]=Lisa
$names[2]=Kumar

Hash 变量

哈希是一组键/值对。哈希变量前面带有百分号()。要引用哈希的单个元素,您将使用哈希变量名称,后跟与大括号中的值关联的"key"。

这是一个使用哈希变量的简单示例-

链接:https://www.learnfk.com/perl/perl-variables.html

来源:LearnFk无涯教程网

#!/usr/bin/perl

%data=('John Paul', 45, 'Lisa', 30, 'Kumar', 40);

print "\$data{'John Paul'}=$data{'John Paul'}\n";
print "\$data{'Lisa'}=$data{'Lisa'}\n";
print "\$data{'Kumar'}=$data{'Kumar'}\n";

这将产生以下输出-

无涯教程网

$data{'John Paul'}=45
$data{'Lisa'}=30
$data{'Kumar'}=40

上下文变量

Perl根据上下文(即使用变量的情况)不同地对待同一变量。让我们检查以下示例-

#!/usr/bin/perl

@names=('John Paul', 'Lisa', 'Kumar');

@copy=@names;
$size=@names;

print "Given names are : @copy\n";
print "Number of names are : $size\n";

这将产生以下输出-

无涯教程网

Given names are : John Paul Lisa Kumar
Number of names are : 3

这一章《Perl - 变量》你学到了什么?在下面做个笔记吧!做站不易,你的分享是对我们最大的支持,感谢!😊

相关文章

算法面试通关40讲 -〔覃超 - 62讲〕

Nginx核心知识100讲 -〔陶辉 - 155讲〕

微信小程序全栈开发实战 -〔李艺 - 179讲〕

性能优化高手课 -〔尉刚强 - 30讲〕

在 RxJS 中重新创建 contextmenu 事件

敌人机器人远离玩家 Unity3D

嵌套的 ul li 错位

使用javascript定位h1中每个单词的首字母

BsonSerializationException:类的创建者映射有 2 个参数,但没有...

Python计算目录及其所有子目录中的文件

视频推荐〔Perl - 实例解析数据运算〕

更多视频 »
好记忆不如烂笔头。留下你的足迹吧 :)