Python流程控制

  本章介绍 python 的基础流程控制。包括 if 条件语句、for 循环 和 while 循环语句; continue 及 break 的用法等。 基本用法与 C 和 Java 差不多,无 switch 语句。

  if 语句

    以下例为例,if(...)  括号内为一表达式,当为True(即成立)时,执行对应的代码段,注意,所有条件语句后方都需加冒号 :

 ''' 判断用户输入的整数是几位数(暂不考虑用户输入非整数)
为0 输出 It's zero.
个位数 输出 It's a number below 10
两位数 输出 It's a two-digit number
三位数级以上 输出 It's digit is more than two
'''
user_input = raw_input("Please input a number: ") # Python 2
# user_input = input("Please input a number: ") # Python 3
n = int(user_input) # 用户输入的类型为字符串,转换为整数类型 if (n==0):
print("It's zero.")
elif (n<10):
print("It's a number below 10")
elif (n<100):
print("It's a two-digit number")
else:
print("It's digit is more than two")

    可能会有零到多个 elif 部分,else 是可选的。关键字 “ elif ” 是 “else if ” 的缩写,这个可以有效地避免过深的缩进。 if ... elif ... elif ... 序列于替代其它语言中的switch case语句。

  for 语句

    Python 中的 for 语句和 C Pascal 中的 有不同。通常的循环可能会由用户来定义迭代步骤和中止条件(如 C ),Python 的 for 语句依据任意序列(链表或字符串)中的子项,按它们在序列中的顺序来进行迭代。

 # for 语句实例
string = "python"
for i in string:
print(i) # 字符串处理
list = ["l","i","s","t"]
for i in list:
print(i) # 列表处理
for i in range(5):
print(i) # range()函数,range(5) 表示 0 到 4

    上述示例仅感受下 for 语句的写法,具体的会在之后的数据结构等章节详细阐述。

  while 语句

    while(...) 括号内表达式若为 True,则继续执行代码段;若为False,停止执行

 # while语句实例
i=1
while(i<10):
print(i)
i += 1

    需要注意错误代码导致的无限循环,如:

 i=1
while(i>0):
i += 1
print(i)

  break 、 continue 语句

    break     语句和 C 中的类似,直接跳出循环,执行循环后的语句

 i=1
while(i<5):
if(i==3):
break
print(i)
i += 1

    continue  语句也是从C中借鉴来的,跳出当前循环,并执行下一次循环

 i=1
for i in range(1,6):
if(i==3):
continue
print(i)

最新文章

  1. 将UIview描画成虚线等.
  2. fopen()和fclose()的用法
  3. 内省(Introspector)
  4. sybase常用SQL语句,工作中积累的
  5. itellyou MSDN, 我告诉你 win7系统工具等
  6. unbuntu下vnc和vnc2swf的使用
  7. iOS 本地企业发布流程
  8. 键盘控制div上下左右移动 (转)
  9. thinkphp学习笔记1—目录结构和命名规则
  10. TortoiseGit - 分支管理 -增加分支
  11. Smart.coder每日站立会议08
  12. Http get方式url参数长度以及大小
  13. Mysql 启动遇到 The server quit without updating PID file (/[FAILED]l/mysql/data/021rjsh216086s.pid)和Attempted to open a previously opened tablespace
  14. python2 =&gt; python3 踩坑集合
  15. Flask 学习 四 数据库
  16. echarts堆叠图添加总量
  17. Selenium 工作原理
  18. vb程序安装时需要在客户端安装MSSOAP30.dll,但注册不上,请问怎么处理
  19. Chart:Grafana
  20. 对接口(interface)的思考

热门文章

  1. 洛谷 P1957 口算练习题 题解
  2. django rest_framework比较完整的自定义实现样例
  3. go chapter 9 - 反射
  4. 关于 Unity 的一些小细节,不注意可能会被“坑”一些时间。
  5. java float与double的范围和精度
  6. FastReport.Net使用:[33]高亮显示
  7. 【递推】【概率】Gym - 100814A - Arcade Game
  8. hdu 3642 体积并
  9. hdu 4352 数位dp+nlogn的LIS
  10. java中重载(overload)与重写(override)的区别