perl-basic-分支&循环
- if
 
- elsif
 - shorter if: if+condition放在句子尾部。
 
use strict;
use warnings; my $word = "antidisestablishmentarianism";
# get the length of a scalar
my $strlen = length $word; if($strlen >= 15) {
print "'", $word, "' is a very long word";
# elsif
} elsif(10 <= $strlen && $strlen < 15) {
print "'", $word, "' is a medium-length word";
} else {
print "'", $word, "' is a short word";
}
# short form of IF
print "'", $word, "' is actually enormous" if $strlen >= 20;
- unless...if
 
my $temperature = 10;
unless($temperature > 30) {
# condition is false
	print $temperature, " degrees Celsius is not very hot";
} else {
# condition is true
	print $temperature, " degrees Celsius is actually pretty hot";
}
# condition is false, then print
print "Oh no it's too cold" unless $temperature > 15;
- 允许使用三元运算符?:且可以嵌套:
 
my $eggs = 5;
print "You have ", $eggs == 0 ? "no eggs" :
$eggs == 1 ? "an egg" :
"some eggs";
- while(),until(), do...while,do...until和for类似c
 - 循环一个数组时不必用for循环。。用foreach
 
my @arr = ("hi", "my", "lady");
foreach my $str (@arr) {
    print $str;
    print "\n";
    }  
或者极简形式:
print $_ foreach @arr;
如果需要索引值,用这个:
foreach my $i ( 0 .. $#arr ) {
	print $i, ": ", $arr[$i];
}
- 循环hash时:因为用keys返回hash的key是无序的,所以先用sort排序。
 
foreach my $key (sort keys %scientists) {
	print $key, ": ", $scientists{$key};
}
- 循环控制:next = continue, last = break, 可以从循环中跳转到label处,label必须全大写
 
CANDIDATE: for my $candidate ( 2 .. 100 ) {
	for my $divisor ( 2 .. sqrt $candidate ) {
		next CANDIDATE if $candidate % $divisor == 0;
	}
	print $candidate." is prime\n";
}
perl-basic-分支&循环的更多相关文章
- python_分支循环
		
什么是分支+循环? --不同条件进行不同逻辑处理 -- 分支 --满足条件进行反复相同逻辑处理 -- 循环 分支的形式? -- if 条件: 执行体 else: 执 ...
 - 第十九节:Java基本数据类型,循环结构与分支循环
		
基本数据类型 Java中的基本数据类型,有8种,在Java中有四种类型,8种基本数据类型. 字节 boolean 布尔型为1/8 byte 字节类型为1 short 短整型为2 char 字符型为2 ...
 - 第三次实验计算分段函数 第四次计算分段函数和循环NEW 第五次分支+循环加强版 实验报告
		
一.实验题目,设计思路,实现方法 第四次分支+循环 加强版 (2-2计算个人所得税,2-7 装睡,2-8计算天数) 设计思路:2-2 用if-else的语句,与计算分段函数的题类似的做法:2-7 运用 ...
 - java基础二 分支循环
		
分支循环: if... if...else... if...else if... if...else if...else... switch...case...defau ...
 - Vue 分支循环
		
分支循环 在Vue中,分支循环也是使用标签属性指令完成的,这一点与后端模板语法不太相同. v-for 下面是通过v-for进行循环,不光可以拿到元素本身,也可以拿到索引值. 如果数据是对象类型,则可以 ...
 - Swift学习(三)类型推导&基本运算&分支&循环
		
一.Swift中类型推导&基本运算 Swift中类型推导 如果一个标识符在定义时有直接赋值,那么可以根据后面赋值的类型,来推导出前面标识符的类型,这样前面标识符的(:类型)可以省略 查看标识符 ...
 - python 分支 循环
		
一 python 知识点 1.变量(标签): a(变量名) = '字符串'or 数字 (整形和浮点型) a相当于变量名的标签 如: a = ...
 - 分支&循环
		
分支 单分支 if 条件: 满足条件后要执行的代码 双分支 if 条件: 满足条件执行代码 else: if条件不满足就走这段 多分支: if 条件: 满足条件执行代码 elif 条件: 上面的条件不 ...
 - python的分支循环
		
知识内容: 1.if-else分支结构 2.while循环 3.for循环 4.循环结构综述 5.break和continue语句 一.if-else分支结构 1.单分支选择结构 if 表达式: 语句 ...
 - Oracle数据库之SQL基础和分支循环
		
一.SQL基础语言 DECLARE --声明 a ); --变量或对象 BEGIN a:='小明';-- := 表示给一个变量赋值 dbms_output.put_line(a); --输出用 dbm ...
 
随机推荐
- openstack安装newton版本keyston部署(一)
			
一.部署环境: 两台centos7, 内存2G 控制计算节点: Hostname1: ip:172.22.0.218 计算节点及存储节点 Hostnam ...
 - Eclipse Debug时出现Source not found错误
			
今天在Debug Java代码时报出了Source not found这个错误,如下图所示,经过查询资料得知这是由于缺少Hadoop源程序代码所导致的错误. 在此我建议了两种方法,可以先采用方法一,这 ...
 - 路径方案数(mod)
			
路径方案数(mod) [题目描述] 给一张无向图,n 个点和 m 条边,cyb 在 1 号点,他要去 2 号点, cyb 可以从 a 走到 b,当且仅当a到2的最短路,比b 到2的最短路长. 求 cy ...
 - [转] java实现https请求
			
package com.lichmama.test.util; import java.io.ByteArrayOutputStream; import java.io.IOException; im ...
 - codevs 4888 零件分组
			
4888 零件分组 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 现有一些棍状零件,每个零件都有 ...
 - SQL基本语法备忘
			
注:以下演示是在mysql命令行下的操作 数据库相关操作 create database mytest; --创建数据库 create database if not exists mytest; - ...
 - 【LeetCode】2.Add Two Numbers 链表数相加
			
题目: You are given two linked lists representing two non-negative numbers. The digits are stored in r ...
 - 《学习CSS布局》学习笔记
			
近几天做了一个小的企业展示网站.虽然页面是在模板的基础上改的,但改的多了不熟悉CSS也很麻烦.正好我看到了学习CSS布局这个网站,于是补习了一下CSS知识. CSS的显示 CSS的元素分为两类:块级元 ...
 - iOS动画——Layer Animations
			
我们先来看一下今天我们要实现的效果,今天实现的效果用第一篇View Animations能实现相同效果. 动画由书籍<iOS Animations by tutorials>提供,我只是一 ...
 - POJ 4020 NEERC John's inversion 贪心+归并求逆序对
			
题意:给你n张卡,每张卡上有蓝色和红色的两种数字,求一种排列使得对应颜色数字之间形成的逆序对总数最小 题解:贪心,先按蓝色排序,数字相同再按红色排,那么蓝色数字的逆序总数为0,考虑交换红色的数字消除逆 ...