Python基础__Python语法基础、条件、循环

  之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环。本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的
Python语法规则

1.语句是逐个运行的。Python一般都会按照次序头到尾执行文件中嵌套的语句,这也符合正常人的思考问题的方式。但是像条件、循环等语句会使得解释器在程序内跳跃。因为Python经过一个程序的路径叫做控制流程,像条件、循环等会对控制流程产生影响的语句通常叫做控制及流程语句

2.块和语句的边界会自动检测。就像我们所见,Python的程序块中没有大括号或‘’‘being,end’‘等分隔符,Python使用首行缩进把嵌套模块内的语句组合起来。同样的,Python语句一般是不以分号种植的,一行的末尾通常就是该行的所写语句的结尾。

3.复合语句=首行+“:”+缩进语句。 Python中所有复合语句都遵循相同的格式:首行会以冒号终止,在接一个或多个语句,而且通常都是首行下缩进的。缩进语句叫做块。
4.空白行、空格以及注释都会忽略
5.文档字符串(docstring)会忽略,但会保存并有工具显示

一. 条件
条件相当于一个筛选装置,即当满足条件会如何,不满足条件又会如何,这里就会出现一个或多个分支语句。
用法:

a=1;b=2
if a>b: # 冒号表示定义了一个模块
    print('a大') # 条件后面必须有语句
elif a==b:
    print('a、b相等')
elif a<b: 
    print('b大')
else: # else后面不能有条件,else不是必须的
    pass # pass占位符

  

a=input('请输如0--100分的数:') #提示输入
if a.isdigit():
    b=int(a) #a是字符串
    if b>100:
        print('输入错误')
    elif b>=90:
        print('优秀')
    elif b>=80:
        print('良好')
    elif b>=60:
        print('及格')
    else:
        print('差')
else:
print('请输入0--100的整数')
               

  



二.循环
在生活中我们会遇到对次用反复同一规则完成一件事,就像太阳每天从东方升起,这就是一个循环的过程。同样为解决某些问题,我们也会建立循环语句。下面我们将介绍while和for循环

while循环
1.格式:

while <test>:
    <statements1>
esle:
    <statements2>

  

 

while True: #满足判断循环
    print('Hello')
#将10以内的偶数输出
a=0
while a<=10:
    if a%2==0:
        print(a)
        a+=1 
#注意a+=1是与if同一个级别的语句,若与print(a)对其则会出现错误        

  



2.     break 跳出整个循环语句
        cuntinue 跳到最近所在循环的开头处(来到循环的首行)
        pass 什么也不做,起到占位作用
        循环else块 只有正常离开的时候才会执行(也就是没有碰到break语句)

a=10
while a>3:
    a-=1
    if a==5:
        break #终止while循环
        print(a)

#continue
a=10
while a>3:
    a-=1
    if a==5:
        continue #跳过了剩余的循环体,但不结束循环
        print(a)	
    else
    a=5

while a<8:
print('ok')
a+=1
## if a>6:
## break
else:
print('not ok')

 

else: 当循环正常结束的时候,运行else,当非正常结束的时候指的是强行推出循环的时候(break countine等)不运行else语句

for循环
for循环在Python中是一个通用的迭代器:可以遍历任何有序的序列对象内的元素
一般格式:

for <target> in <object>:
    <statements1>
esle:
    <statements2>

  

 

for i in range(10):
#将10以内的奇数输出
#方法一:
for i in range(11):
    if i%2==1:
        print(i)
#方法二:
for i in range(11):
    if i%2==0:
        continue
    print(i)    

  



总结:
相同点:都能循环的做一件重复的事情
不同点:while循环在条件不成立的时候停止
for循环在迭代对象穷尽的时候停止


四.嵌套循环

for a in range(4):
    for b in range(4):
        print('%d 行%d列 '%(a,b),end='')
    print('行: ',a)    

  

条件
a=1;b=2

a=1;b=2
if a>b: # 冒号表示定义了一个模块
    print('a大') # 条件后面必须有语句
elif a==b:
    print('a、b相等')
elif a<b: 
    print('b大')
else: # else后面不能有条件,else不是必须的
    pass # pass占位符

  

 

# 集体缩进 ctrl+Tab(或ctrl+{})

#猜数字游戏:
import random
b=random.randint(1,20) #两边都都取得到
while True:
    a=input('请输入1到20的整数:')
    a=int(a)
    if a==b:
        print('恭喜你,猜对了')
        break
    elif a>b:
        print('大了')
    else:
        print('小了')    

  


posted on 2018-02-25 14:04  方方31140519  阅读(150)  评论(0编辑  收藏  举报

导航