Perl语言总结(2)

perl语言入门级练习记录2&3章 题目来自《Perl语言入门》第四版 2.1.2练习 [5]写一个程序,计算半径为12.5的圆的周长。圆周长等于2π(π约为3.1415926)乘以半径。答案为78.5。 #!/usr/bin/perl –w use strict; my $pi=3.141592654; my $r=12.5; my $c=2*$pi*$r; printf "The C is %.1f\n",$c; [4]修改上述程序,用户可以在程序运行时输入半径。如果,用户输入12.5,则应得到和上题一样的结果。 #!/ 阅读详情

1.4 文件句柄

文件句柄只是你给文件,设备,网络套接字或管道起的一个名字,这样可以帮助你分清你正在和那个文件或设备通讯,同时掩藏了如缓冲等复杂性。

你可以使用 open 创建并关联一个文件。open 函数需要至少两个参数:文件句柄和你希望与文件句柄关联的文件名。Perl 也给你一些预定义(并且预先打开)的文件句柄。STDIN 是我们程序的标准输入,

STDOUT 是标准输出。STDERR 标准错误输出。

因为你可以用 open 函数创建用于不同用途(输入,输出,管道)的文件句柄,因此你必须指定你需要哪种类型。

   open(SESAME, "filename")         # 从现存文件中读取
   open(SESAME, "<filename")         # (一样的东西,明确地做)
   open(SESAME, ">filename")         # 创建文件并写入
   open(SESAME, ">>filename")         # 附加在现存文件后面
   open(SESAME, "| output-pipe-command")   # 设置一个输出过滤器
   open(SESAME, "input-pipe-command |")      # 设置一个输入过滤器

close(SESAME) 来关闭文件句柄或者另外一个 open 语句将文件句柄同别的文件关联起来。打开一个已经打开的文件句柄隐含地关闭第一个文件。

从控制台输入一个数字的做法,注意用 <STDIN>,带尖括号

   print STDOUT "Enter a number: ";      # 请求一个数字
   chomp($number = <STDIN>);            # 输入数字
   print STDOUT "The number is $number./n";   # 打印该数字

1.5 操作符

Perl 的操作符大多数直接取自 C,FORTRAN,sed (1) 和 awk (1)。下面列出一些与 C 比有些特别的操作符。

$a ** $b  幂  取 $a 的 $b 次幂
print 123 . 456;      # . 连接操作符,打印 123456
print 123 x 3;      # x 重复操作符,打印 123123123
$val ||= "2";      # 如果 $val 不为真则把它设置为 2
($temp -= 32) *= 2; # perl 还可以这么写,相当于 $temp=($temp-32)*2;

1.5.5 逻辑操作符

Perl 有两组逻辑操作符,一组借鉴了 C(!/&/|/&&/||) ,另一组借鉴了 BASIC(not|and|or|xor)。

Perl 的逻辑操作符并不是返回真(true/1)或假(false/0),而是返回最后触及到的操作数,如:

print 100 && 200 ; # 输出 200
print 200 && 100 ; # 输出 100

open(GRADES, "grades") or die "Can't open file grades: $!/en"; #这个常用

1.5.6 比较操作符

比较操作符也有两组,符号(==|!=|<|>|<=|>=|<=>),字串(eq|ne|lt|gt|le|ge|cmp)。<=>|cmp 相当于 java 的 compareTo() 操作,相等时为 0,如果 $a 大为 1 如果 $b 大为 -1,在 sort 函数中,它们非常有用。

1.5.7 文件测试操作符

-e $a  存在,-r $a  可读 ,-w $a  可写,-d $a  目录,-f $a  文件,-T $a  文本文件

一个例子(留意一下 or/and 操作和 warn 输出信息):
-e "/usr/bin/perl" or warn "Perl is improperly installed/n";
-f "/vmlinuz" and print "I see you are a friend of Linus/n";

Perl语言的图形用户界面 Perl语言在图形用户界面(GUI)开发方面提供了多种选择,包括Tk、wxPerl、Gtk2-Perl和Qt-Perl等模块。每种模块都有其独特的优势与适用场景,开发者可以根据项目需求进行选择。虽然Perl的GUI开发未必是市场上最主流的选择,但它凭借强大的文本处理能力和简单的语法,仍然能为开发者提供良好的体验。在未来,随着计算机技术的发展和用户需求的变化,Perl的GUI开发将继续发挥其独特的作用。 阅读详情

相关推荐

perl脚本语言学习笔记心得

这个文档中记录和总结了我学习perl脚本语言的一些经验和初学者需要注意的事情

Perl语言中一些内置变量等,$、qw、cmp、eq、ne等

Perl语言中经常会出现一些符号,让初学者很是郁闷。现列举如下: 字母 符号 释义 eq  = = equal(等于) ne != not equal(不等于) cmp 比较 qq  “” 双引号 q ‘’ 单引号 qw    (“”,“”) 带双引号和括号逗号的 $&

xs1326962515的博客 1万+

浅析图像处理中的名词:Gamma 校正(Gamma变换、Gamma调整)

浅析图像处理中的名词:Gamma 校正(Gamma变换、Gamma调整)

qq_51908382的博客 1万+

perl基本语法

本文介绍从变量类型、操作运算符、控制叙述、子程序、I/O和档案处理、 Regular Expressions、Spectial Variables、Help、函数、总结几个部分介绍perl,只是叙述了一些Perl的基本语法。 一.数据型态(Data type): Perl 的数据型态大致分为四种:Scalar(变量)、Scalar Array(数组)、Hash Array(散列)、Re...

anzailiang1060的博客 682

【Android】条形码/二维码扫描——ZXing源码分析

正在更新中 针对3.2.1版本源码 与其他版本代码可能会有出入,但核心思想基本不变。 首先从com.google.zxing.client.android包中的目录结构分析:Book:这个文件夹中有5个类: BrowseBookListener 实现了adapter的点击事项响应,通过获取ISBN,然后跳转到Google books中查询响应的详细信息。 SearchBookContents

年轻的学徒 2453

STM32CubeMx+stm32f407+FreeRTOS+LAN8720实现LWIP以太网UDP TCP数据收发功能

单片机实现LWIP的调试

qq_40600203的博客 3068

perl学习笔记三----操作符

 操作符perl的操作符大部分跟C语言相同,所以下面还是介绍一些不相同的地方。一。 操作符1。乘幂 **例如 2**3 ----8乘幂不可以超过系统的表示范围否则报错。2。数字比较例如 ab若 a>b  返回值 1若 a=b 返回值 0若 a3。逻辑运算符 &之所以把它提出来讲是这个运算符不能应用于负整数,否则会把负数转换为无符号数。4。字串比较符号。lt   小于   gt   大于   eq 

成长专栏 1730

(超详细)Scala环境搭建(scala-2.12.15、IDEA2021.1.3)

Scala环境搭建(scala-2.12.15、IDEA2021.1.3) JunLeon——go big or go home 目录 Scala环境搭建(scala-2.12.15、IDEA2021.1.3) 一、Scala概述 1、什么是Scala? 2、Scala发展史 3、Scala与Java的关系 二、Scala环境搭建 1、环境准备 2、Scala安装与配置环境变量 3、验证Scala 三、编写第一个Scala程序 1、使用IDEA创建maven工程 2、.

JunLeon的博客 3万+

Perl 运算符

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号,如: 3+2=5。

lingjierui的博客 2678

【算法】克里金kriging参数值预测模型

模型中特征值2个,目标值1个,data数据集如图所示。搭建kriging参数值预测模型。

weixin_48618536的博客 5059

用AI科研绘图全新升级!借助谷歌新发布模型Nano Banana pro实测一键绘制机制图与技术路线图,直接告别文字乱码与低画质

之前有同仁反馈,用Nano Banana画科研插图的时候,要么文字部分容易乱码,要么抓不住关键内容,画出来的效果反复修改后,还是达不到理想的效果。终于在Gemini 3发布没几天,万众期待的大香蕉模型也成功升级到了Pro版本,官方名称叫“Gemini 3 Pro Image”,实际上也就是我们说的Nano Banana 2。这次的Nano Banana Pro模型,不仅可以直出4K高清图,还能自定义比例,推理能力和中文文字的稳定性也得到了提升。

智能AI让学术科研更容易 1887

Perl基本数组排序方法介绍

Perl的sort的工作方式是这样的,它遍历原始数组的每两个元素;如果$b应该在左边的话,返回-1,两者一样的话,返回0。它比较两边的字符串的值,如果左边参数“小于”右边参数,就返回1;如果相等,就返回0。在ASCII码表里,"1"在"3"前边,因此字符串"12"会排在字符串"3"前面。其最简单的形式是传递一个数组,它会返回排序后的元素组成的数组。这是最简单的情形,但是可能未必是你想要的。如果对数值数组使用sort进行默认的排序,结果可能不是我们期望的。第一个输出显示了排序前的数组,第二个是排序后的。

jh035512的博客 632

自建 HTML获取腾讯六宫格点选图片验证码素材,实现刷新批量获取图片方便训练

通过自建 HTML 页面,可以方便地获取腾讯六宫格二维码素材,不仅过程简单,而且可以灵活配置各种参数。希望这篇文章能帮助到需要相关素材的小伙伴。如果你有其他问题或者更好的方法,欢迎留言交流!

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 486

perl语言总结2

1.Perl 中所有变量都是全局的;也就是说,这些变量可以在程序的任意部分使用2.函数调用&chomp;如果编译器在调用之前知道此子程序的定义,或者 Perl 从语法中能知道这是一个子程序调用,则子程序前的符号&是可以省略的3.4.printf ?Hello, %s; your password expires in %d days!/n?,$user, $days_to_die;5.文件句柄(f

427

RT-Thread littefs控制GD32F4xx片内Flash

GD32F4xx RT-Thread下使用littefs 控制片内flash 调试记录

madao1234的博客 995

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Perl脚本语言学习2

perl学习2: 控制程序流 (foreach是核心) 文章目录perl学习2: 控制程序流 (foreach是核心)前言语句块运算符循环标号退出perl1.语句块:if语句(几乎与C语言类似,除了elsif)2.字符关系运算符(类似于=, >, <, >=, <=, !=)?3.循环语句(与C语言完全相同)4.流程控制工具 前言 提示:这里可以添加本文要记录的大概内容: 语句块 运算符 循环 标号 退出perl 1.语句块:if语句(几乎与C语言类似,除

weixin_38413739的博客 651

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Perl语言学习笔记2

本文已搬家至【Perl学习】学习笔记(持续更新中)

gnuhpc的专栏 576

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

perl语言入门总结-第2章

$what ='steak'; print "fred ate $n ${what}s.\n"; 布尔值 如果是数字0为假,如果是空字符串''为假, 如果即不是数字也不是字符串,那就先转成数字或字符串再行判断。字符串'0'也为假 获取用户输入 $line = <STDIN>; 去除最右边换行 $text ="a line \n"; ch...

weixin_30745641的博客 83

Perl语言学习体会2(语言基础篇)

续前篇。 1) Perl语言中任何需要变量的地方都可以使用赋值运算来代替。从而使得程序更简洁,我个人理解是也同时使得程序更难理解。如下: chomp($txt=<STDIN>); 和 $tex=<STDIN>; chomp($txt); 他们的功能是一致的都是,读入文字,略过最后的换行符。 2) Perl语言的变量内插。好邪恶啊。所谓变量内插...

aihengwu2509的博客 206

Perl语言学习笔记 day 2

1、在Perl中,子程序名与变量名属于不同的命名空间,可以使用同一个名字分别命名子程序和变量,但不建议这样使用。 2、子程序的定义是全局的,同名的子程序后边的会覆盖掉前边的定义。 3、定义子程序 sub subProgram{ #body } 4、调用子程序 &subProgram 5、所有的子程序都有返回值,默认最后一行的运算结果为返回值。 6、子程序未定义参数时,传递的参数默

Anders的技术成长专栏 913

Learning Perl(Perl语言入门)学习笔记(2)

 第三章  列表和数组 1、 列表和数组在Perl中用来表示复数;2、 列表(list)指的是标量的有序集合,数组(array)表示存储列表的变量;列表是数据,数组是变量,列表可以不放在数组中;3、 数组或列表的每个元素都是单独的标量变量,拥有独立的变量值,可以同时包含数字、字符串或undef,但使用时一般让其具有相同的类型;4、 索引计数从0开始,如果索引值是表达式,而结果不为整时会先取

501

Perl语言编程>>学习笔记2

1. Perl中变量的常用表示   ${var}相当于 $var   $Dog::days 在Dog包里面的变量$days   $#days @days 的最后一个索引   $days->[2] $days 引用的数组的的第3个元素   $days[0][2] 多维数组   $days{200}{'Feb'} 多维哈希   $days{2000,"Fe...

weixin_30577801的博客 95

Perl语言入门习题库chaper15习题

【代码】Perl语言入门习题库chaper15习题。

w1152715961的博客 204
上一篇: Perl 语言概览
下一篇: Perl语言总结(3)
suacker
博客等级 码龄24年 46粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值