[第三节] Python流程控制语句 - if, while, for, break, continue

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[第三节] Python流程控制语句 - if, while, for, break, continue相关的知识,希望对你有一定的参考价值。

目录:

一. 条件判断语句 - if

二. 循环语句 - while & for

三. break & continue语句. 

四. 练习题


正文:

一, 条件判断语句 - if:
1) 第一种语法:

if 条件: 
    代码块

2) 第二种语法:

if 条件: 
    内容一
    内容二 
else:
    内容三 
    内容四

3) 第三种语法:

if 条件1: 
    代码块 
elif 条件2: 
    代码块 
elif 条件3: 
    代码块 
else: 
    代码块

注:
= 和 ==:一个等号是赋值,两个等号是比较.
True和False:

if True:   #此处的结果如果为真,则永远执行第一个print;如果此处结果为假, 则执行第二个print.
    print("xxx") 
else: 
    print("xxx")

if判断条件:
1) True、False
2) 1 > 2  n1 > n2  n1 == n2
3) name == "jack" or name == "jenny"  
4) name != "jack"
5) name == "jack" and pwd == "123" 

示例:

#!/usr/bin/env python 
#! _*_ coding:utf-8 _*_ 
#
import getpass
username = raw_input("username:")
password = getpass.getpass("password:")
if username == "yangbin" and password == "yangbin":
    print("""******info******:
        username: %s    
        password: %s""" % (username,password))
else:
    print("input error.")

二, 循环语句 - while & for
1, while循环语句:
语法:

while 条件: 
    代码块 
    # 如果条件为真,则执行循环体.
    # 如果条件为假,则不执行循环体.

示例1:

# 该while流程控制语句为一死循环,除非手工干预,否则不会自动退出.
import time  # 导入定时器
while True:
    print("1")
    time.sleep(1)  # 将定时器设置为每一秒输入一次
print("End")

示例2:

import time
n1 = True
while n1:  # n1为True.
    print("1")
    time.sleep(1)
    n1 = False  //n1第二次赋值为False,即会跳出while循环.
print("End")

2, for循环语句
语法:

for 变量名 in "循环内容": # 固定搭配.
    XXX

示例1:
#打印l,i,n,u,x.
方法1:

n1 = "linux"
for i in range(len(n1)):
    temp = n1[i]
    print(temp)

方法2:

n1 = "linux" 
for i in n1: 
    print(i)

三, break & continue语句.

break用于终止循环, 即跳出当前循环,并且break语句下面的代码,将不再执行;

continue用于跳出本次循环,继续下一次循环;

示例1:
# 打印数字1-10并且跳过数字7.

i = 0
j = True
while j:
    i = i + 1
    if i == 7:
        continue
    elif i == 11:
        break
    print(i)

示例2:
#打印字母l,i,n,u,x,除去n,u.

n1 = "linux"
for i in n1:
    if i == "n" or i == "u": # 注意此处用or,不能用and,因为i不可能同时为n和u.
        continue  # 此处如果为break,则只打印出l,i 
    print(i)

四, 练习题
1、使用while循环和for循环分别输出 1 2 3 4 5 6 8 9 10.
# while循环.

i = 0
while i < 10:
    i += 1
    if i == 7:
        continue
    print(i)

# for循环.

for i in range(11):  # range(11), 即0-10这11个数.
    if i == 0 or i == 7:
        continue
    print(i)

2、求1-100的所有数的和.
# while循环.

i = 1
sum = 0
while i <= 100:  
    sum += i
    i += 1
print("1+2+3+4+...+100=%d" % sum)
i = 1
sum = 0
while True:
    sum += i
    i += 1
    if i == 101:
        break
print(sum)

# for循环.

sum = 0
for i in range(101):
    if i == 0:
        continue
    sum += i
print("1+2+3+4+...+100=%d" % sum)

3、输出 1-100 内的所有奇数
# while循环.

i = 0
sum = 0
while i < 100:
    i += 1
    if i % 2 != 0:
        sum += i
print("1+3+5+...+99=%d" % sum)

# for循环.  

sum = 0
for i in range(100):
    if i == 0:
        continue
    elif i % 2 != 0:
        sum += i
print("1+3+5+...+99=%d" % sum)

4、输出 1-100 内的所有偶数
# while循环.

i = 1
sum = 0
while i <= 100:
    if i % 2 == 0:
        sum += i
    i += 1
print("2+4+6+...+100=%d" % sum)

# for循环.  

sum = 0
for i in range(101):
    if i == 0:
        continue
    elif i % 2 == 0:
        sum += i
print("2+4+6+...+100=%d" % sum)

5、求1-2+3-4+5 ... 99的所有数的和
# while循环.

i = 0
s = 0
y = 0
while i < 99: 
    i += 1
    if i % 2 != 0:
        s += i
    elif i % 2 == 0:
        y -= i
sum = s + y
print("1-2+3-4+5-6...-98+99=%d" % sum)

# for循环.

s = 0
y = 0
for i in range(100):
    if i == 0:
        continue
    elif i % 2 != 0:
        s += i
    elif i % 2 == 0:
        y -= i
sum = s + y
print("1-2+3-4+5-6...-98+99=%d" % sum)

6、用户登陆(三次机会重试)
# while循环.

import getpass
i = 0
while True:
    name = input("Please input your name:")
    password = getpass.getpass("Please input your password:")
    i += 1
    if name == "yangbin" and password == "yangbin":
        print("login succeed!")
        break
    else:
        print("you only input %d count" % (3-i))
    if i == 3:
        break

# for循环.  

import  getpass
for i in range(3):
    name = input("Please input your name:")
    password = getpass.getpass("Please input your password:")
    if name == "yangbin" and password == "yangbin":
        print("login succeed!")
        break
    else:
        print("you only input %d count" % (2-i))
    if i == 2:
        break


第三节完成!

本文出自 “yangbin” 博客,请务必保留此出处http://13683137989.blog.51cto.com/9636221/1896118

以上是关于[第三节] Python流程控制语句 - if, while, for, break, continue的主要内容,如果未能解决你的问题,请参考以下文章

python流程控制-条件语句If,while循环

第三章:流程控制语句

第三章 流程控制

《史无前例!编程语言python斩获最有发展第一与排行榜第三!》深入 Python 流程控制

大数据技术之_23_Python核心基础学习_02_ 流程控制语句 + 序列(10.5小时)

python流程控制语句-if语句