解释器根据变量的类型分配内存并确定可以保留内存中存储的内容。因此,通过为变量分配不同的数据类型,可以在这些变量中存储数字或字符串。
创建变量
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"。
这是一个使用哈希变量的简单示例-
#!/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
参考链接
https://www.learnfk.com/perl/perl-variables.html
标签:教程,变量,ages,无涯,Perl,names,print,Paul,John From: https://blog.51cto.com/u_14033984/6947489