5、python之条件,循环语句

一、虾扯蛋

      无论什么语言其实都离不开顺序,条件,循环这三种结构,包括中文。当我们和别人在描述这样一件事情:“明天是周六,如果明天天气好的话我就去和和朋友逛街,否则我就在家一直玩游戏”。这段话中,我们描述这件事情的时候就是一个

顺序描述,而出现如果。。。。否则。。。。。这种的就是条件,一直玩游戏是一个重复的工作表示循环做一件事情。当然,上面的中文的语法,那下面我们一起来看看python是如何来表示的,顺序的自然就不用多说了。

二、条件语句

      在python中如果表示某段代码需要满足某些条件才能执行时的语法如下:

1 age = 60
2 if age >= 60:
3     print("你老了")
4 else:
5     print("你还年轻,可以继续浪")

使用关键字if....else来表示条件语句,我们看看下面的代码:

1 age = 60
2 if age >= 60:
3     print("你老了")
4 else:
5     print("你还年轻,可以继续浪")
6 print("你猜我会输出吗?")

问题来了,第6行的代码会输出吗?我们来看一个图,大家就应该清楚了。

在其它语言像C++,JAVA,C#等一般都是使用{}来表示if,else的作用区域,python中使用行缩进的方式来表示作用区域,这样会使得python的代码结构看起来清晰明了,这也符合了硅叔当初对python的定义。

     有的时候,我们程序中可能需要更多的判断语句,比如说我们有这样的程序:

1 age = 12
2 if age >= 60:
3     print("你老了")
4 else:
5     if age < 20:
6         print("太年轻了,好好学习吧")
7     else:
8         print("你还年轻,可以继续浪")
9 print("你猜我会输出吗?")

程序运行如下:age=12,不满足if条件,执行else代码块,else代码块中判断age<12成立,打印“太年轻了,好好学习吧”,不执行else代码块,程序继续往下走,打印“你猜我会输出吗?”,程序运行结束。我们总结一下,这个程序其实

有3中情况:1、age>=60 2、20<=age<60 3、age<20。如果我们再对<20的进行细分,整个程序的结果看起来就不那么清晰,这显然不符合当初定义python的初心(虽然这样语法没毛病,但不建议这样干)。python有更好的语法去处

理这种情况。我们看下面的程序:

 1 age = 4
 2 if age >= 60:
 3     print("你老了")
 4 elif age < 20 and age>=10:
 5     print("太年轻了,好好学习吧")
 6 elif age<10:
 7     print("你还是个孩子啊")
 8 else:
 9     print("你还年轻,可以继续浪")
10 print("你猜我会输出吗?")

我们使用if  elif  elif.......else来处理多种条件的场景,看,现在代码是不是清晰多了。

二、循环语句

      python中定义循环主要用到关键字:while和for,先用while来玩一把:

1 count = 10
2 while count >= 0:
3     print("count的值为:%s" % count)
4     count = count - 1

上面程序的功能是:只要count满足count >= 0就打印出count的值,while中的循环一共被执行了11次,对于循环语句而言,随着程序的运行必须存在一个条件来终止循环,上面的代码我们还可以利用关键字break来终止循环。修改如下:

1 count = 10
2 while True:
3     print("count的值为:%s" % count)
4     count = count - 1
5     if  count < 0:
6         break

while True:这个条件永真,程序要想终止就必须在循环体内进行终止,因此我们用到了break来终止循环。

针对上面的代码,思考这样一个需求,如果while中的条件不满足,则执行print("循环结束")。程序代码如下:

1 count = 10
2 while count >= 0:
3     print("count的值为:%s" % count)
4     count = count - 1
5 else:
6     print("循环结束")

这是python固有的语法格式,记住它吧!

OK,我们现在把上面代码改成for循环的形式,代码分别如下:

1 for count in range(0,11): #顾头不顾尾 range(1,11)表示count取[1,10]
2     print("count的值为:%s" % count)
3     count = count - 1  #这里有坑,请思考
4 else:
5     print("循环结束")

      学习了循环语句,我们现在使用for循环来遍历我们之前学过的基本数据类型。

1、列表的遍历:

1 list = [1,2,3,4,"434","12"]
2 for i in list:
3     print(i)

2、元组的遍历

tuple = ("上海","北京","扬州")
for city in tuple:
    print(city)

3、集合的遍历

1 set = set([1,2,3,4,5])
2 for i in set:
3     print(i)

4、字典的遍历

1 dic = {1:"高文祥",2:"helen",3:"C罗"}
2 for key in dic:
3     print(key,dic[key],dic.get(key))
posted @ 2018-01-23 13:11  高文祥888888  阅读(421)  评论(0编辑  收藏  举报