zoukankan      html  css  js  c++  java
  • [转 改] Perl初级教程 (三)

    文件处理

    下面是一个简单的perl程序,与UNIX中cat命令对某个文件的操作相同。

    #!/usr/local/bin/perl
    #
    # Program to open the password file, read it in,
    # print it, and close it again.
    
    
    $file = '/export/home/dwei/ProgramScriptFolder/TextFile'; # Name the file open(INFO, $file); # Open the file
    #open(INFO,'/export/home/dwei/ProgramScriptFolder/TextFile'); # open函数打开一个文件并进行读操作。第一个参数filehandle是指向文件的句柄。第二个参数为被打开的文件的文件名
    @lines = <INFO>;		# Read it into an array
    close(INFO);			# Close the file
    print @lines;			# Print the array
    >

    Introducing ideaX Power Sessions
    Here is your opportunity to engage in hyper-focused idea-generating sessions to improve Advent’s business! Anthony Sperling is hosting the first session, with two topics:  
    First, since referrals from our satisfied clients are a huge source of our new sales, what are some ideas of how we could positively tap into our user community in ways that we are not today?

    Secondly, APX has been a big market success for Advent and we still have a very large, opportunity to upgrade our remaining Axys customer base. What are some additional thoughts on how we could encourage more and more Axys clients to move up to our APX solution?

    Categories have been created for these topics. Using a category topic, post your ideas or vote and comment on other ideas while the session is active (April 29-May 21). Anthony and his team will then review the ideas and share back with Advent how and when some of the ideas will be put into action. We’ll recognize contributors and adopters.


    #open语句也可以对文件进行输出和附加操作。可以在文件名前加>进行输出操作,用>>进行附加操作:

    open(INFO, ">$file"); # Open for output

    > [返回空,文件内容也清空]


    open(INFO ,">>$file");      # Open for appending
    print INFO "Hello World!";   # Input the text to file. 
    close(INFO);

    open(INFILE ,"$file");
    @lines = <INFILE>;
    close(INFILE);
    print @lines;

    > Hello World ! Hello World !


     

     【控制结构
    foreach
    代码
    @FruitList = ("Apple ","Pear ","Orange ","Peach ");
    print("\n");
    print(@FruitList);
    print("\n");
    foreach $Item (@FruitList)
    {
        
    print("\n");
        
    print($Item);
    }
    > Apple
      Pear
      Orange
      Peach
     
     

     for

    
    

     每次的操作过程被包围在花括号内。程序块中的$Item第一次被赋予@FruitList数组中的第一个值,然后被赋予数组的第二个值,依次类推。如果@FruitList是空的,那么程序块将不会被执行

     

    判断

    判断是检验表达式结果是真是假的一种结构。在Perl中,任何非0数字和非空字符串被看作真。数字0、0字符串和空字符串被看作假。下面是一些基于数字和字符串的判断

    $NumberA = 1;
    $NUmberB = 2;
    if ($NumberA != $NumberB)  # == Is $a numerically equal to $b?
    {
        
    print("Hello World!");
    }
    > Hello World!
     

    $StrA = "A";
    $StrB = "B";

    if ($StrA eq $StrB)     # eq :Is $a string-equal to $b?
    {
     print("Hello World!");
    }              # ne : Is $a string-equal to $b?
    else
    {
     print("Here!");
    }

    > Here!
     

     【逻辑

     

    $StrA = "A";
    $StrB = "0";

    if ($StrA && $StrB)
    {
        
    print("Hello World!");
    }
    else
    {
        
    print("Here!");
    }
     
    > Here!
     

    $StrA = "A";
    $StrB = "0";

    if ($StrA || $StrB)
    {
     print("Hello World!");
    }
    else
    {
     print("Here!");
    }

     > Hello World!
     

    $StrA = "A";
    $StrB = "0";

    if (! $StrB)
    {
     print("Hello World!");
    }
    else
    {
     print("Here!");
    }

    > Hello World!

     

     

    - Make people around you successful is the biggest contribution to ourselves. -

  • 相关阅读:
    深度学习遥感影像(哨兵2A/B)超分辨率
    基于Google Earth Engine的全国地表温度反演
    蚂蚁森林的树木长得如何了?遥感云计算告诉你!!
    基于单分类器的高分辨率遥感影像道路提取
    基于google earth engine 云计算平台的全国水体变化研究
    超大影像栅格转矢量快速实现
    大规模深度学习多通道遥感图像样本增强
    大规模遥感影像匀光匀色的一些思考
    基于深度学习的珠海一号高光谱影像云检测
    全自动多源遥感影像大气校正方法
  • 原文地址:https://www.cnblogs.com/zencorn/p/1740064.html
Copyright © 2011-2022 走看看