Username: Password:

跟我学Perl(二)
来源:linux宝库作者:linux宝库 发布时间:2007-09-30 00:00:00


  顺便说说一些指示代码

  写完美无缺的代码对我来说有一些不切实际。在过去的一些场合,我写了些“write-only”代码,这将使任何试着读他的变成不同的颜色。我经常尝试着提高水平,我真的希望看到这个想法得以实现。

  空白??tab和space键??在Perl中受到了忽略,也就是说,他是无所谓有无所谓无的。正因为这一点,您能格式化您的Perl代码来表达您正想要表达的思想,举个比较简单的例子;

  @boats=(“Aloa”,“Cheoy Lee”,“Pearson”,“Mason”,Swem,“Westsail”,“S2”,“Petersen”, “Hereshoff”);#海船的名单列表。

  这个例子中,我们用一些海船的名字填入数组“@boats”中,下面的例子也许更加容易理解:

  @array=(“Aloa”,#法国OSTAR/IOR的船

  “Cheoy Lee”,#舒适但是昂贵

  “Pearson”,#结实但是笨重

  “Mason”,#设计良好,但有些雍肿

  “Swan”,#上等船只,假如您是大款

  “Westsail”,Westsail在双尾船里算是相当不错了

  “S2”,#漂亮的海湾船只??但不适宜远洋

  “Petersen”, #钢铁巡洋舰,宽敞但援慢

  “Hereshott”,#快速而华丽,狭窄而昂贵

  这个习惯不但仅在Perl中得到应用。绝大多数的现代语言允许附加空白,这样能够使代码更加易懂。当我写这个系列文章的时候,我将尽最大努力示范至少我自己认为好的代码样式的版本。同时也希望每一个人在创建他们自己的代码时认真考虑这件事。

  变量

  在Perl里,易用性很重要的。他是一种被称作“格式宽松”的语言,其中变量的定义并没有严格需要。实际上,没有什么方法能够定义32位的浮点数变量。

  Perl中有三种变量,他们分别是标量型变量(Scalars),数组型变量(arranys)和散列表(hashes),除了这些颇令人头疼的名字,他们其实都很简单:仅仅包含一些数据的不同排列而已。

  标量型变量??数字,字符串和引用

  一个标量型变量由$标志来表示,例如$nuru,$joe,$pointer。

  例:

  “0.0421”,“Joe’s gloue”,内存地址“0Xa000”

  数组型变量??联系数字标识的标量型变量的列表或说集合

  一个数组型变量由@标志来表示,例如@v,@list,@variable

  例:

  0-----“Sundary”

  1-----“Mondeny”

  2-----“Tuesday”

  3-----“Wednesday”

  散列表??标量型列表的引用键

  一个散列表变量由%标志来表示,例如%people,%x,%this_is_a_hash。

  例:

  ridcnt ??“Sherlock Holmes”

  addr??“221B Backer Street”

  code?“NW1”

  city?“Londen”

  country?“Steuth”

  ……

  注意,虽然数组型变量是按数字顺序存储的,但散列表却不是??恢复散列表的第一个元素的往往和您载入的第一个元素毫无关联。散列的元素通过文本键代替他们在结构中的位置来进行索引。

  利用这三种数据类型,您能够表示您想要的任何事,并且会很轻松的实现。

  另外很重要的一点:$a,@a 和%a三者之间完全毫无关联,他们处在不同的名字空间。我在设计程式时,尽量小心不使用这些在视觉容易产生混淆的名字。特别是像$a[0](数组@a的第一个元素的引用)这种变量已存在的情况下??这的确是您需要注意的。

  能够给变量赋不同类型的值??数字型和字符串??我们下一步将进行有关两种类型的一起的操作。Perl为您提供这些,但应该记住哪些类型的用哪些操作符。

  Operator Num Str

  等于 == eql

  不等于 != ne

  小于 < Lt

  大于 > gt

  小于等于 <= le

  大于等于 >= ge

  当通过比较这些字母或字符串之后会觉得他们异常容易记忆和使用??比较字符的时候,就使用字符。

喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅