Perl标量的学习
任何语言都有变量,变量在Perl中简单的分为标量和组数变量.
标量:表示单个的量,即英文中所说的单数.
例如: $name = "Hello"';
$age=18;
$price =123.88;
$price=343_333_333.898;
都是一个标量,Perl对数字标量在计算机中采用浮点数形式存贮。通常浮点数的精度是不够准确的。这点需要特别注意。
下面是一个例子.
#!/usr/local/bin/perl
$value = 9.01e+21 + 0.01 - 9.01e+21;
print ("first value is ", $value, "\n");
$value = 9.01e+21 - 9.01e+21 + 0.01;
print ("second value is ", $value, "\n");
---------------------------------------------------------
$ program3_3
first value is 0
second value is 0.01
可以看到,不同的运算顺序可能导致的结果不一样!在Perl中十进制数字用0x开头表示.0开头表示一个8进制数。Perl对数学运算的操作符有:
算术操作符 :+(加)、-(减)、*(乘)、/(除)、**(乘幂)、%(取余)、-(单目负)
(1)前面几个不用说了吧.说一下乘幂这里需要注册,基数不能为负数.
(2)单目负又是什么意思?他实际上就是一个负号。就是数学中的负数表示符。
算术比较符:
==(相等),<(小于),>(大于),!=(不等于),还有一个<=>(表示可以取三个数-1,0,1);
标量除了是一个数字,字符串之外,还可以是其它复杂类型的引用.这点请暂时记住.我将在后面详细说明这个问题.
现在来说下字符串,Perl采用unicode表示一个数值,这就意味着和java一样,可以表示世界上任何一个国家的语言文字,对于字符串的运算符有
.(相连)
比较符:lt(小于),gt(大于),ne(不等于),eq(等于),le(小于等于),ge(大于等于),需要说明的的是。字符串的运算是按Ascii来进行运算的。就是说a(Ascii值为97),A(ASCII值为65),结果就是: a gt A
另一种变量叫做数组变量.数组大家都知道,表示一组数据的集合.数据型可以分为有序的数组和无序的列表.他通常相当于英语中的复数.还有一种叫散列.他是一种特殊的数组.用Key+value的形式来表示.相当于Java中的Map.是按键值对来存放的.
我们用$表示一个标量,用@表示一个列表和数组.用%表示一个散列.
举例说明:
@lines = ("a","b","c");
这样就定义了一个数组,他里面有三个元素 a b c ,定义数组时用()号把中间元素包扩起来.里面用,号分开,
也可以写成这样
@lines=qw(a b c d);
注意用qw定义时,里面不能写,号.这点请记住它!,而且qw里面只能是字符的原型,比如说,你给成这样
$a ="a";
@lines=qw($a b c d);将$a这个变量传进来,你的目的是这样,但是我告诉你这达不到你希望的效果.
他会原封不动的给你显示出来.这也正好说明了这里不能给a b c d 加个双引号.
%person 表示一个散列.
要对这个散列进行给值.使用
$person{"name"}="Hello";
也可以使用%person= ("a","b","c","d")这样的形式,我们说过,散列表示一个key/value的集合,所以perl会将这样的列表形式的数组按照key/value进行转换. 每两个一组,前面是键,后面是值.
当然这样的形式并不好看.
我们还可以写成
%person= ("a"=>"b","c"=>"d").
你可以直接把一个数组表示的变量给一个散列.用(),你也可以把一个散列的具体值指向另一个散列.
%person{"a"}={
"name"=>"zhangsan",
"age"=>"23",
}
通过 $person{"a"}{"name"}访问到zhangsan;
不仅如此,你还可以将一个散列的具体值指向一个数量.
%person{"a"}=["a1","a2","a3"];
通过$person{"a"}[0]访问到a1;
有了这样的机制我们很容易建立出类似多维数组一样的东西!好了,是不是很简单呢?
分享到:
相关推荐
Perl是一种强大的脚本编程语言,...以上就是Perl学习笔记中涵盖的一些基础概念和操作。继续深入学习,你将能够编写更复杂的Perl脚本,解决各种实际问题。记得实践是学习编程的关键,多做练习,逐步提升你的Perl技能。
以下是对Perl学习笔记中提到的关键知识点的详细说明: 1. **标量**: 标量是Perl中最基本的变量类型,用于存储单个值,如字符串或数字。变量名前缀是美元符号“$”。例如,`$first_name = "Melanie"`定义了一个名...
### Perl学习笔记参考 #### Perl简介 Perl是一种高级编程语言,全称为Practical Extraction and Report Language,由Larry Wall创建,并持续由他进行更新与维护。Perl最初被设计用于Unix环境下的编程任务,随着...
### Perl 语言学习笔记知识点概览 #### 第一章:Perl 语言简介及基础语法 - **Perl 的定义**:Perl 是 Practical Extraction and Report Language 的缩写,是一种强大的脚本语言,广泛应用于文本处理、系统管理...
### Perl学习笔记:快速入门与面向对象编程 #### 基础概念介绍 Perl是一种功能强大的脚本语言,被广泛应用于系统管理、网络编程、文本处理等领域。它具有丰富的内置函数和灵活的数据类型,能够方便地处理各种复杂...
在这份“Perl学习笔记”中,我们将深入探讨Perl语言的核心概念、语法特性以及一些常见的应用实例。 一、Perl语言基础 1. 变量:Perl中的变量以符号$、@、%或$开头,分别代表标量、数组、哈希(关联数组)类型。...
这份"perl的学习笔记1"很可能是作者在深入学习Perl过程中积累的宝贵资料,包括他自己编写的小程序和学习心得。 首先,Perl语言的核心特性是其灵活性和适应性。它的语法混合了C、sed、awk等语言的特点,使得它既适合...
### Perl学习笔记 #### 第1章:Perl简介与基本语法 - **Hello, World!**:Perl中的第一个程序通常是从“Hello, World!”开始的。例如: ```perl #!/usr/bin/perl print "Hello, world!\n"; ``` 或者简化为: ...
Perl语言是一种功能强大的脚本编程语言,尤其适合文本处理和系统管理任务。本文将深入探讨Perl的命令行应用,帮助初学者快速入门。 首先,Perl有很多命令行参数,这些参数可以增强Perl程序的功能和安全性。其中,`-...
### Perl语言学习完全笔记知识点概览 #### 一、Perl语言简介 ...以上内容为Perl语言学习笔记的主要知识点概览,涵盖了语言的基础语法、数据类型、操作符、数组处理以及文件读写等方面,适合初学者快速入门和深入学习。
- **Perl的变量声明**:Perl不需要显式声明变量。 **示例代码详解:** ```perl #!/usr/bin/perl print "Hello, world!\n"; ``` - **第一行**:指示系统使用哪个Perl解释器来运行程序。 - **第二行**:打印输出...
Perl语言是一种功能强大的脚本编程语言,尤其适合文本处理和系统管理任务。以下是对Perl语言入门学习的关键知识点的详细说明: 一、Perl程序的编译与运行 Perl程序不需要预编译,直接通过Perl解释器运行。在命令行...
通过"PERL系统学习教程笔记",你可以逐步了解和掌握这些概念,从基础的变量和控制结构开始,逐渐深入到更复杂的特性,如正则表达式和模块使用。同时,实践是学习Perl的关键,结合实际项目或小练习,将有助于更好地...
同时,“perl对中文的支持”和“Perl脚本学习笔记”系列文章,可以帮助初学者了解Perl处理中文字符的能力以及基础的Perl语法和编程技巧。 学习Perl,尤其是对于Perl模块的管理和使用,不仅需要理解基本的Perl语法,...
### Perl24学时详细笔记知识点总结 #### 第一学时:Perl简介与注释 - **Perl语言介绍**:Perl是一种高级编程语言,广泛应用于系统管理、Web开发及文本处理等领域。它拥有强大的字符串处理功能,使得在处理文本文件...
本学习笔记将从批处理脚本的基本语法和高级特性两个方面详细讲解,涵盖了变量、输入输出、字符串操作、算术运算、程序流程控制、函数定义、扩展批处理功能以及批处理任务实战等多个知识点。 首先,cmd解释器是...
学习Perl语言时,重要的是理解其基本语法和特性,例如引用和数组的使用,上下文对值的影响,以及如何有效地利用CPAN( Comprehensive Perl Archive Network),这是一个庞大的Perl模块库,几乎包含了所有你能想到的...