为什么80%的码农都做不了架构师?>>>   

主要学习内容,语法控制结构(顺序,选择,循环)。Python语言中代码的执行一般是按代码的顺序执行的,但是这个顺序不是一定的,我们可以通过特定的关键字和结构来影响代码的执行顺序。

1.顺序结构
    顺序结构是最简单的,就是按照你写的代码的顺序来运行。这个没有特定的结构,只要按顺序写代码就可以了,注意,一条语句的结束是按一行的结束来判定的,如果你要在一行中写多条语句,那么语句之间必须用‘;’来分开每条语句。我是不推荐一行多条语句,因为那样看代码会很累,但是凡是无绝对,只要写代码事你从代码阅读者的角度想想,最大限度的使代码阅读成为一种简单明了的事就可以了。推荐看一下Google编程风格,虽然不一定要按他的做,但多少可以给你个参考。

Python中代码块之间的分离是通过缩进实现的,同一缩进的代码属于一个代码块,当然是连续的同一缩进的语句。缩进通常使用4个space(空格键),当然也可以使用Tab键,但是不建议使用,原因:跨平台!跨平台涉及到很多标准,所以你的Tab键不一定在其它环境就是能用的。

#一行多条语句,不推荐
>>> m = input('m:');print m
m:23
23
#一行一条语句,推荐
>>> m = input('m:')
m:23
>>> print m
23
>>>

2.选择结构(if,if...else...,if...elif..else...)
    (1)if语句
    if语句跟C语言中if语句一样,结构如下:

#if条件结构if 条件语句:   #条件为真,执行代码块,条件为假,跳过代码块执行...代码块...

示例代码:

# Filename: if.py
#_*_coding:utf-8_*_#条件为真
if True:print ("1.zai dai ma kuai!")print ("2.bu zai dai ma kuai!")
# 条件为假
if False:    #注意这个冒号不能省略,这是跟C语言的区别print ("3. zai dai ma kuai!")print ("4.bu zai dai ma kuai!")

其结果是:

#输出结果
E:\python source code\learning>if.py
1.zai dai ma kuai!
2.bu zai dai ma kuai!
4.bu zai dai ma kuai!

if结构特点:满足某一条件执行特定的代码,不满足跳过特定代码,向下执行。

(2)if...else...语句
     if...else...语句在功能上和C语言中的没有区别,但在语法结构上还是有区别的,区别就在于多了个‘:’。

if 条件语句:   #注意冒号……代码快1……
else:         #注意冒号……代码块2……

示例代码:

# Filename:if1.py
#_*_coding:utf-8_*_if True:print ("True 1111!")
else:print ("False 1111!")

其结果是:

E:\python source code\learning>if1.py
True 1111!

if...else...结构特点:满足某一条件执行特定的代码,不满足则执行另一特定的代码。
    (3) if...elif...语句
    if...elif...语句的功能跟C语言中的if...else if ...是一样的,在其它方面也基本是一样的,比如可以多级嵌套等,唯一的区别还是那个‘:’。
    结构如下:

if 条件语句1:   #注意冒号……代码块1……
elif 条件语句2:    #注意冒号……代码块2……
……
elif 条件语句n:    #可多级嵌套……代码块n……
……
else:              #这条可以不加,具体视代码功能而定……代码块m……

示例代码:(来源: http://sebug.net/paper/python/ch06s02.html)

number = 23
guess = int(raw_input('Enter an integer : '))if guess == number:print 'Congratulations, you guessed it.' # New block starts hereprint "(but you do not win any prizes!)" # New block ends here
elif guess < number:print 'No, it is a little higher than that' # Another block# You can do whatever you want in a block ...
else:print 'No, it is a little lower than that' # you must have guess > number to reach hereprint 'Done'
# This last statement is always executed, after the if statement is executed

结果如下:

$ python if2.py
Enter an integer : 50
No, it is a little lower than that
Done $ python if.py
Enter an integer : 22
No, it is a little higher than that
Done
$ python if.py
Enter an integer : 23
Congratulations, you guessed it.
(but you do not win any prizes!)
Done

if...elif...结构特点:寻找满足某一特定条件来执行某一特定代码。

3.循环结构(while语句,for语句)
     (1) while循环语句
        while循环语句的功能跟C语言也是一样的,差别,我就不再说了,那就是‘:’。
结构如下:

while 条件语句:……代码块……

示例代码:

m = 0
while 10 != m:print mm = m + 1

结果如下:

E:\python source code\learning>while.py
0
1
2
3
4
5
6
7
8
9

while循环语句的特点:满足的条件不知何时或多少次会出现,而程序必须要这个条件才能往下运行时使用。
    (2) for语句
    for循环语句功能上与C语言的没什么太大的区别,不过在语法结构上挺大的(相对于上面的语句)。for循环语句的格式为for...in...。for..in是另外一个循环语句,它在一序列的对象上递归即逐一使用队列中的每个项目。(参考:http://woodpecker.org.cn/abyteofpython_cn/chinese/ch06s04.html)
结构如下:

for 变量 in 序列:……代码块……

示例代码:

#Filename: for.py
#_*_coding:utf-8_*_#输出1-4
print ("First")
for i in range(1,5):  #1-5之间的数,不包括5print iprint ("Second")
for m in range(5,10,2):    #5-1之间的数,不包括10,从5开始,每次增加2,即5,7,9print m

结果如下:

E:\python source code\learning>for.py
First
1
2
3
4
Second
5
7
9

(3) break语句和continue语句
    break语句是用来终止循环语句的,即哪怕循环条件为False或序列还没有被完全递归也停止执行循环语句。
break语句示例代码:(来自: http://woodpecker.org.cn/abyteofpython_cn/chinese/ch06s05.html)

# Filename: break.pywhile True:s = raw_input('Enter something : ')if s == 'quit':breakprint 'Length of the string is', len(s)
print 'Done'

结果如下:

E:\python source code\learning>break.py
Enter something : Max
Length of the string is 3
Enter something : Google
Length of the string is 6
Enter something : quit
Done

continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
continue语句示例代码:

# Filename: continue.pywhile True:s = raw_input('Enter something : ')if s == 'quit':breakif len(s) < 3:continueprint 'Input is of sufficient length'# Do other kinds of processing here...

结果如下:

E:\python source code\learning>continue.py
Enter something : HK
Enter something : qwe
Input is of sufficient length
Enter something : qwer
Input is of sufficient length
Enter something : q
Enter something : quit

控制结构完!

转载于:https://my.oschina.net/hkmax/blog/158119

Python学习笔记(四)相关推荐

  1. python学习笔记四-列表

    list列表 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 列表是最常用的Python数据类型,它可以作为一个 ...

  2. python学习笔记(四):函数

    一.函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序),在Pasc ...

  3. python学习笔记(四)、条件、循环及其他语句

    1 再谈print和import 1.1 打印多个参数 print 能够同时打印多个表达式,并且能自定义分隔符.如下: print('a','b','c') --> a b c print('a ...

  4. Python学习笔记四(Python OS模块)

    Python os模块提供了一个统一的操作系统接口函数,通过python os模块可以实现对系统本身的命令,文件,目录进行操作,官方参考文档( http://docs.python.org/libra ...

  5. Python学习笔记(四)—生成随机数

    函数randint(a,b)可以产生区间(a,b)中的随机数.但是要加import random: 比如说: import random number1 = random.randint(0,9) n ...

  6. 【懒懒的Python学习笔记四】

    编程的时候常常需要检查一些条件,并据此决定采用什么措施,在Python中,if语句常用来做判断语句. 一.一个简单的示例 下面是一个简短的示例,演示了如何使用if语句进行判断,假如你有一个水果列表,你 ...

  7. python学习笔记(四)模块

    4.1基础 模块实现函数重用,import导入模块. import sys for i in sys.argv:print(i) 运行结果: C:\Users\liyz-b\Desktop\work\ ...

  8. python学习笔记四——数据类型

    1.数字类型: 2.字符串类型: 切片:a[m:n:s] m:起始值   n:结束值(不包括n)   s:步长,负数表示从后向前取值 3.序列:列表,元组和字符串都是序列 序列的两个主要特点是索引操作 ...

  9. python中seaborn库_[Python学习笔记(四)] Seaborn库基础学习——01

    用 matplotlib能够完成一些基本的图表操作,而 Seaborn 库可以让这些图的表现更加丰富. 1. import seaborn as sns 用于导入 seaborn 库,并取别名为 sn ...

  10. python 学习笔记 四 课后作业

    # 1.写代码,有如下列表,按照要求实现每一个功能li = ['alex','wusir','eric','rain','alex']# 1,计算列表的长度并输出# print(len(li))# 2 ...

最新文章

  1. h5 返回上一页并且刷新页面
  2. intellij idea的out目录下为什么会有与src名字相同的.class文件呢?
  3. 2017 ACM/ICPC Asia Regional Xian Online 记录
  4. engagement center的session.connect
  5. 最长对称字符串php_有哪些像TENET一样中心对称的英语单词(误)
  6. 计算机如何玩二十四点游戏,数学二十四点游戏有什么技巧吗?
  7. html怎么转换成asp.net,Asp.net中将Word文件转换成HTML的方法
  8. python仿真搭建_mock搭建——python——搭建一个简单的mock服务——简单版本
  9. 计算机科学与技术专业实训手册,计算机科学与技术专业实习计划
  10. 彻底理解Python切片
  11. android 源码开发 关于编译等小知识点总结
  12. java dll源码查看工具_Java调用dll库源码
  13. 【分布式事务】如何基于消息中间件实现分布式事务?万字长文给你答案!!
  14. ffmepg 视频添加水印 —— 筑梦之路
  15. table表格内容互换
  16. 牛客网练习—《网络基础》DAY2
  17. 运放的基本应用电路-运放电路设计-运算放大器的基本应用电路
  18. 十四、 ThinkPHP6_聚合.原生.子查询
  19. 的确恶搞:教你调戏QQ好友
  20. 2022值得入手的运动装备有哪些?618超值得买合集

热门文章

  1. 使用Java程序消费SAP Leonardo的机器学习API
  2. SAP MM 如下图,做发票校验的时候,对于非计划交货成本分摊到各个ITEM中,为什么分摊比例是1:2,而非1:6?
  3. 言论丨李开复:2018中国最大AI红利是政策
  4. 干货丨人工智能、机器学习和认知计算入门指南
  5. (已解决)(Jupyter notebook)中的tqdm进度条不是在一行更新并显示而是一直滚动往下输出
  6. 重磅!库克官宣苹果放弃英特尔,全面采用自研芯片,MAC迎来历史转折点
  7. 观点 | 李飞飞最新访谈:我每天都在对AI的担忧中醒来
  8. 基于互联网大脑架构的阿里巴巴未来趋势分析【系列2】
  9. 基于互联网大脑架构的腾讯未来趋势分析[系列1]
  10. 重磅 | MIT启动IQ计划:研究人类智能,让全世界的机构共同合作