一. 条件判断

详情参看:https://www.runoob.com/ruby/ruby-decision.html

1.详情实例(看看就中了)

#---------------#
# LOL场均人头
#---------------#
point_game = 15 if point_game >= 30
puts "大大神"
elsif point_game >= 20
puts "大神"
else
puts "还中吧"
end #---------------#
# 我要玩游戏
#---------------#
#《绝地求生》(PUBG)
PUBG_SteamPrice = 98 #unless=只要不
unless PUBG_SteamPrice < 100
#大于等于100的时候
puts "玩蛋去"
else
#小于100的时候
puts "真香!"
end #---------------#
# 今天是星期几?
#---------------#
week_day = 0 case week_day
when 0,7
puts "星期日"
when 1
puts "星期一"
when 2
puts "星期二"
when 3
puts "星期三"
when 4
puts "星期四"
when 5
puts "星期五"
when 6
puts "星期六"
else
raise Exception.new("没这天")
end

注:Python中没有unless和case when这种条件判断的写法

2. 值得注意的

(1). Ruby if 修饰符

(2).Ruby中的case when

二. 循环

详情参看:https://www.runoob.com/ruby/ruby-loop.html

1.详情实例

#循环数组
game_list = ["塞尔达传说", "超级马里奥", "开心剪纸"]
for game in game_list do
puts game
end #循环1-5
for num in 1..5 do
puts num
end #循环1-4
for num in 1...5 do
puts num
end #while循环
index = 0
while index < 5 do
puts "while.index=" + index.to_s
index+=1
end #untile
index = 0
until index == 5 do
puts "until.index=" + index.to_s
index+=1
end

2.值得注意的

(1).Ruby while 修饰符

(2).Ruby until 语句(基本用不着)

(3).Ruby next 语句

(4).Ruby redo 语句

(5).特殊循环

#each循环
gamelist = ["塞尔达传说", "超级马里奥", "开心剪纸"] gamelist.each { |game|
puts game
} gamelist.each do |game|
puts game
end gamelist.each_with_index do |game,i|
puts i.to_s + "." + game
end #times循环
5.times do |i|
puts "第 #{i+1} 次times循环"
end #step循环(根据步长的循环)
1.step(10,3) do |i|
puts "#{i}"
end
#upto(从哪到哪)
2.upto(5) do |i|
puts "updo=" + i.to_s
end #downto
5.downto(2) do |i|
puts "downto=" + i.to_s
end

三. Ruby的异常处理

begin
#有可能发生错误的处理
puts ">处理开始"
#raise "my raise error!"
#10 / 0
rescue => e
#错误发生时
puts "X错误发生!"
puts e
else
#正常处理时
puts "O正常处理"
ensure
#最后处理,无论是否发生处理(final)
puts "_最后的扫尾处理"
end

Ruby学习中(条件判断, 循环, 异常处理)的更多相关文章

  1. shell中条件判断if中的-z到-d的意思

    shell中条件判断if中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 ...

  2. shell中条件判断if中的-z到-d

    shell中条件判断if中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真.[ -c FILE ] 如果 ...

  3. Shell学习(六)——条件判断总结

    Shell学习(六)--条件判断总结 [1]https://www.cnblogs.com/zhw-626/p/8528001.html [2]https://www.cnblogs.com/yizh ...

  4. Python学习笔记—条件判断和循环

    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...

  5. python学习第六天 条件判断和循环

    总归来讲,学过C语言的同学,对条件判断和循环并不陌生.这次随笔只是普及一下python的条件判断和循环对应的语法而已. 条件判断: 不多说,直接贴代码: age = 23 if age >= 6 ...

  6. Python学习之条件判断和循环

    #coding= utf-8 # 条件判断和循环 # 如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做 age1 = 20 if age1 >= 18: prin ...

  7. 值类型之间的相互转化,运算符,if条件判断,循环,函数

    值类型之间的相互转化 number | string | boolean 一.转换为boolean=>Boolean(a); var num = 10; var s = '123'; var b ...

  8. Python 条件判断 循环

    age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的 ...

  9. Python学习_05_条件、循环

    条件 和其他语言类似,python中使用if...elif...else来形成分支,支持三目操作符 ?:,python中没有switch,但是缩进的特性让if...elif...else的结构同样便于 ...

随机推荐

  1. Google protocol buff使用

    Protocol Buffer使用简介 我们项目中使用protocol buffer来进行服务器和客户端的消息交互,服务器使用C++,所以本文主要描述protocol buffer C++方面的使用, ...

  2. java多线程编程详细总结

    一.多线程的优缺点 多线程的优点: 1)资源利用率更好2)程序设计在某些情况下更简单3)程序响应更快 多线程的代价: 1)设计更复杂虽然有一些多线程应用程序比单线程的应用程序要简单,但其他的一般都更复 ...

  3. @configuration和@component之间的区别

    @configuration和@component之间的区别是:@Component注解的范围最广,所有类都可以注解,但是@Configuration注解一般注解在这样的类上:这个类里面有@Value ...

  4. python3 http.server 本地服务支持跨域

    创建start.py,代码如下: #!/usr/bin/env python try: # Python 3 from http.server import HTTPServer, SimpleHTT ...

  5. LC 932. Beautiful Array

    For some fixed N, an array A is beautiful if it is a permutation of the integers 1, 2, ..., N, such ...

  6. SVN服务器的安装

    运行VisualSVN-Server-2.7.3.msi程序, 如下图 点击Next, 下一步 选中 I accept选项, 点击Next, 下一步 选择默认配置, 服务和控制台组件方式, 点击Nex ...

  7. pandas基础,Serires,Dataframe

    DataFrame DataFrame是Pandas中的一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值.字符串.布尔型等),DataFrame即有行索引也有列索引,可以被看做是 ...

  8. to_datetime 以及 dt.days、dt.months

    Series类型的数据,经过 to_datetime 之后就可以用 pandas.Series.dt.day 和 pandas.Series.pd.month. import pandas as pd ...

  9. np.repeat()

    np.repeat()用于将numpy数组重复. numpy.repeat(a, repeats, axis=None); 参数: axis=0,沿着y轴复制,实际上增加了行数axis=1,沿着x轴复 ...

  10. JMeter4.0分布式调度压测部署

    我们在Loadrunner学过使用Load Generator做肉鸡, 通过Controller来进行脚本和权重的分配来进行分布式压测, Jmeter作为当今的网红性能测试工具,这个功能必须是少不了的 ...