Python学习

第二天

回顾

上次说到Python 是一种解释型语言: 意味着开发过程中不需要编译,这就类似于PHP和Perl语言。Python 还是交互式语言: 这意味着,可以在一个Python提示符,直接互动执行写程序。然后简单说了Python中的变量,今天我们来说下Python中的分支语句以及循环语句。

分支结构

我们在前写的代码就是简单的输入-简单处理-输出模式,而实际的业务往往有各种各样的条件判断,根据不同的条件,执行不同的代码,然后产生不同的结果,这就是我们今天要说的分支结构。

if分支结构

if分支结构是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。


if分支结构
score = eval(input("请输入筛子里面的点数"))
if score== 6:
    print("猜对了")

注意:if后面的表达式时Boolean类型的表达式(比较表达式或者逻辑表达式)或者true/false;只有当结果为true的时候才会执行对应的代码块。

if...else分支结构

通过上述的if分支结构,我们会有一种意犹未尽的感觉,猜对点数有结果,猜不对结果呢?这就需要我们的if...else结构了。


if...else结构
score = eval(input("请输入筛子里面的点数"))
if score==99:
    print("猜对了")
else :
    print("猜错了")

多重if结构

多重if结构
score = eval(input("请输入Python成绩:"))
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"  
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
print("输入成绩属于级别{}".format(grade))

注意:最后再强调一下,分支语句的条件boolean类型的条件表达式/逻辑表达式,只有当结果为true的时候才会执行对应的代码。

循环结构

我们上面说了分支结构,表示条件的判断,当然还会有循环结构,在Python中的循环主要有while和for循环两种。当需要重复执行代码中的某个操作的时候,就要用到循环结构。这里大家一定要知道循环的三要素:循环条件、循环操作、条件的变化。

while循环

如果要构造不知道具体循环次数的循环结构,我们推荐使用while循环,while循环通过一个能够产生或转换出bool值的表达式来控制循环,表达式的值为True循环继续,表达式的值为False循环结束。

while 判断条件(condition):
执行语句(statements)……

同样这里的条件依然是boolean类型的表达式或者True,注意冒号和缩进。
下面我们以猜对筛子大小为例简要说明while循环的使用:

import random
shaiZi = random.randint(1, 6)
ciShu= 0
while True:
  ciShu+= 1
  number = int(input('请输入你猜的数字: '))
  if number < shaiZi:
    print('你猜小了')
  elif number > answer:
    print('你猜大了')
  else:
    print('恭喜你猜对了!')
    break
print('你花费了%d次猜对筛子的点数' % counter)

for循环结构

在循环应用中,假如我们已经知道了循环的次数,有没有一种比 while 结构更为简单的写法。答案当然是有,这就是 for 循环。Python中for 循环可以遍历任何序列的项目,如一个列表或者一个字符串。另外python中,for循环能做到的while循环都能做到;但是while循环能做的,for循环不一定能做到。

语法:
for 变量名 in 序列:
代码块(循环体)

强调一下,序列的选择可以有以下数据类型,常见的序列有:字符串,列表,字典,集合,元组,迭代器,生成器,range。
下面我们以1-100之间既能被 3 整除,又能被 5 整除的数字之和为例。

i = 0
sum = 0
for i in range(1,100):
   if(i%3 == 0 and i%5 == 0):
      sum += i
print("1-100之间既能被 3 整除,又能被 5 整除的数字之和"+str(sum))

range函数

我们在上面既然用到了range函数,接下来我们来简单说下range函数。语法结构:range(start,stop[,step])
start: 计数从 start 开始。默认0 开始。如 range(5)等价于 range(0,5);
stop: 计数到 stop 结束,但不包括 stop。如range(0,5) 是[0,1,2,3, 4]没有 5
step:步长,默认为 1。如range(0,5) 等价于 range(0, 5, 1),也可以为负数,如:-1,相当于每次减 1。如果我们要实现减法的效果,可以用 range(10,1,-1)。
使用场景:
a.需要产生指定范围的数字序列。
b.单纯的控制for循环的循环次数。

continue和break

continue

continue - 是一个关键字,只能写在循环体中
功能:当循环执行过程中,遇到continue,会结束当次循环,,直接进入下次循环的判断。

break

break是一个关键字,只能用在循环体中
功能:当循环执行过程中,遇到break,整个循环直接结束

下面我们以张飞招兵来理解continue和break的区别。

 num = 1
while(num <= 5):
    name = input("请输入请"+str(num)+"个兵的姓名")
    age = int(input("请输入请"+str(num)+"个兵的年龄"))
    if(age < 18 or age > 40):
        continue
    sex = input("请输入请"+str(num)+"个兵的性别")
    if(sex == "女"):
        continue
    print("第"+str(num)+"个兵的姓名是"+name+",年龄是"+str(age)+",性别是"+sex)
    num = num + 1

接下来你再将continue换成break,体会break与continue的区别。

num = 1
while(num <= 5):
    name = input("请输入请"+str(num)+"个兵的姓名")
    age = int(input("请输入请"+str(num)+"个兵的年龄"))
    if(age < 18 or age > 40):
        break
    sex = input("请输入请"+str(num)+"个兵的性别")
    if(sex == "女"):
        break
    print("第"+str(num)+"个兵的姓名是"+name+",年龄是"+str(age)+",性别是"+sex)
    num = num + 1

Python分支结构、循环结构就到这里了,更重要的是要学会活用分支与循环结构,自己动手实践练习,可以用一些图形输出的题锻炼自己的循环的使用,下面给出几道题。

1、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 20 项之和。
2、输出显示九九乘法表、数字等腰三角形、数字菱形等

如何感觉还可以,点个赞再走呗!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容