首页 > 代码库 > Python基础2

Python基础2

1. if语句

1.1 说明

  if语句主要用来根据周围环境条件(即expession)的变化做出不同的反应(即执行代码)

1.2 语法

1.2.1 单分支结构

if单分支单条件:

if expression:

  expr_true_suite

注释:expession为真执行代码expr_true_suite

示例:

技术分享
name = test
input_name = input("input_name:")
if name == input_name :
    print("right!")
View Code

 

if单分支多条件:

if expression1 and expression2 :
#条件两边可用and 或or

    expr_true_suite
注释:expession为真执行代码expr_true_suite

示例:

技术分享
name = test
age = 22
input_name = input("input_name:")
input_age = int(input("input_age:") )
if name == input_name  and age == input_age :
    print("name and is right!")
View Code

 

if+else:

if expression:

    expr_true_suite   

else:

    expr_false_suite

示例:

技术分享
name = test
input_name = input("input_name:")
if name == input_name:
    print("name is right!")
else:
    print("name is error")
View Code

 

1.2.2 多分支结构

if多分支结构:

if expession1:

    expr1_true_suite

elif expression2:

    expr2_true_suite

elif expession3:

    expr3_true_suite

else:

    none_of_the_above_suite

示例:

技术分享
name = test
age = 22
input_name = input("input_name:")
input_age = int(input("input_age:") )
if name !=input_name and age !=input_age :
    print("name and age all error!")
elif name == input_name and age !=input_age :
    print("name right and age error")
elif name != input_name and age ==input_age :
    print("age right and name error")
else:
    print("all right")
View Code

 

 用户登录:

#import getpass #密码加密
name = input("please input names:")
#pwd = getpass.getpass("please input password:")
pwd = input("please input password")
if name == "chunwei" and pwd == "hello":
    print("welcome to here!")
else:
    print("name or pwd error")

 

猜年龄:

self_age = 22
age = int(input("age:"))
if age == self_age:
    print ("you are right")
elif self_age > age :
    print("try bigger")
else:
    print("try small")

 

 1.3 if语句小结

1)if 后表达式返回值为True则执行其子代码块,然后此if语句到此终结,否则进入下一分支判断,直到满足其中一个分支,执行后终结if
2)expression可以引入运算符:notandor,is,is not
3)多重expression为加强可读性最好用括号包含
4)if与else缩进级别一致表示是一对
5)elif与else都是可选的
6)一个if判断最多只有一个else但是可以有多个elif
7)else代表if判断的终结
8)expession可以是返回值为布尔值的表达式(例x>1,x is not None)的形式,也可是单个标准对象(例 x=1;if x:print(ok))
9)所有标准对象均可用于布尔测试,同类型的对象之间可以比较大小。每个对象天生具有布 尔 True 或 False 值。空对象、值为零的任何数字或者 Null 对象 None 的布尔值都是 False。

 

 

2. while循环

2.1 说明

  while循环的本质就是让计算机在满足某一条件的前提下去重复做同一件事情(即while循环为条件循环,包含:1.条件计数循环,2条件无限循环)

  这一条件指:条件表达式

  同一件事指:while循环体包含的代码块

  重复的事情例如:从1加到10000,求1-10000内所有奇数,服务等待连接

 

2.2 语法

while expression:

    suite_to_repeat

注解:重复执行suite_to_repeat,直到expression不再为真

 

2.2.1 计数循环

count = 0
while (count <5):
    print ("the loop is ",count)
    #print ("the loop is %s" %count)    ##两种写法效果一样##
    count+=1

 

2.2.2 无限循环(死循环)

count = 0
while True:
    print ("the loop is" ,count)
    count+=1

 

2.2.3 while与break,continue,else连用

break跳出本层循环:

count=0
while (count < 5):
    count+=1
    if count == 3:
        print("跳出本层循环,即彻底终结这一个层while循环")
        break
    print(the loop is  ,count)

continue跳出本次循环:

count=0
while (count < 5):
    count+=1
    if count == 3:
        #print(‘跳出本层循环,即彻底终结这一个/层while循环‘)
        #break
        print("跳出本次循环,即这一次循环continue之后的代码不再执行,进入下一次循环")
        continue 
    print(the loop is  ,count)

else连用

count=0
while (count < 6):
    count+=1
    if count == 3:
        print(跳出本次循环,即这一次循环continue之后的代码不再执行,进入下一次循环)
        continue
    print(the loop is %s %count)
else:
    print(循环不被break打断,即正常结束,就会执行else后代码块)

 

猜年龄优化:

输入三次不对则退出

count = 0
self_age = 22
while count <3:
    guess_age = int(input("guess_age:"))
    # if guess_age.isdigit():
    #     guess_age == int(guess_age)
    # else:
    #     continue
    if guess_age == self_age:
        print("you are right!!!!")
        break
    elif guess_age < self_age:
        print("try bigger!!!")
    else:
        print("try small!!!!")
    count +=1

else:
    print("try too many is error ! byebye....")

 

2.3 while小结

1)条件为真就重复执行代码,直到条件不再为真,而if是条件为真,只执行一次代码就结束了
2)while有计数循环和无限循环两种,无限循环可以用于某一服务的主程序一直处于等待被连接的状态
3)break代表跳出本层循环,continue代表跳出本次循环
4)while循环在没有被break打断的情况下结束,会执行else后代码

 

 

3. for循环

3.1 说明

  for 循环提供了python中最强大的循环结构(for循环是一种迭代循环机制,而while循环是条件循环,迭代即重复相同的逻辑操作,每次操作都是基于上一次的结果,而进行的)

 

3.2 语法

3.2.1 基本语法

for iter_var in iterable:

    suite_to_repeat

注解:每次循环, iter_var 迭代变量被设置为可迭代对象(序列, 迭代器, 或者是其他支持迭代的对 象)的当前元素, 提供给 suite_to_repeat 语句块使用.

实例1:

for i in range(10):
    print("loop is :" ,i )

 

实例2:

for i in range(5):
    print("------",i )
    for j in range(10):
        print(j )
        if j > 3:
            break

 

Python基础2