在程序开发中,一共有三种流程方式:
- 顺序:从上向下,顺序执行代码
- 分支:根据条件判断,决定执行代码的分支
- 循环:让特定代码重复执行(解决程序员重复工作
一、if
1.if判断语句的基本语法
if 要判断的条件:
条件成立时,要做的事情
注意:代码的缩进为一个 tab 键,或者四个空格(pycharm 自动帮我们增加)
在 python 开发中,Tab 和空格不要混用
age = 18
if age >= 18:
print 'you are an adult'
2.if else
else:
条件不成立时,要做的事情
……
if 和 else 语句以及各自的缩进部分是一个完整的代码块
age = 12
if age >= 18:
print 'you are an adult'
else:
print 'you are too young'
3.elif
在开发中,使用 if 可以判断条件
使用 else 可以处理条件不成立的情况
但是,如果希望再增加一些条件,条件不同,需要执行的代码也不同,就可以使用elif
语法格式如下:
if+条件1:
执行语句1
elif+条件2:
执行语句2
else:
执行语句3
注意:
elif 和 else 都必须和 if 联合使用,而不能单独使用
可以将 if,elif 和 else 以及各自缩进的代码,看成一个完整的代码块
score = int(raw_input('please input your score:'))
if score >= 90:
print 'excellent!'
elif score >= 80:
print 'great!'
elif score >= 60:
print 'pass!'
else:
print 'bad'
4.if嵌套
在开发中,使用 if 进行条件判断,如果希望在条件成立的执行语句中再增加条件判断,就可以使用 if 的嵌套
if 的嵌套的应用场景就是:在之前的条件满足的前提下,再增加额外的判断
if 的嵌套的语法格式,除了缩进之外和之前的没有区别
if+条件1:
if+条件2:
执行语句1
else:
执行语句2
else:
执行语句3
hat_ticket = False
knife_length = 16
if hat_ticket:
print '车票检查通过,准备开始安检'
if knife_length > 20:
print '长度为 %d:超出限定的长度,不允许进入' % knife_length
else:
print '长度为 %d:没有超过限定的长度,允许进入' % knife_length
else:
print '请先买票'
5、逻辑运算
在程序开发中,通常在判断条件时,会需要同时判断多个条件
只有多个条件都满足,才能够执行后续代码,这个时候需要使用到逻辑运算符
逻辑运算符可以把多个条件按照逻辑进行连接,变成更复杂的条件
python 中的逻辑运算符包括:与 and/或 or/非 not 三种
【1】and
条件 1 and 条件 2
与/并且
两个条件同时满足,返回 True
只需有一个不满足,就返回 False
【2】or
条件 1 or 条件 2
或/或者
两个条件只要有一个满足,返回 True
两个条件都不满足,返回 False
【3】not
对一个条件取反:not 条件
python_score = 20
c_score = 30
if python_score > 60 or c_score > 60:
print '考试通过'
else:
print '请继续努力'
age=18
if age >= 0 and age <= 120:
print '年龄正确'
else:
print '年龄不正确'
is_employee = False
if not is_employee:
print '非本公司员工,禁止入内'
6.综合应用
综合应用–石头剪刀布
1.从控制台输入要出的拳 —石头(1)/剪刀(2)/布(3)
2.电脑随即出拳–先假定电脑只会出石头,完成整体代码功能
3.比较胜负
石头 胜 剪刀
剪刀 胜 布
布 胜 石头
import random
player = int(raw_input('请输入石头1剪刀2布3:'))
computer = random.randint(1, 3)
print computer
if ((player == 1 and computer == 2)
or (player == 2 and computer == 3)
or (player == 3 and computer == 1)):
print 'player win'
elif player == computer:
print 'try again'
else:
print 'player lose'
二、while语句
1、while 循环的基本使用
循环的作用就是让指定的代码重复的执行
while 循环最常用的应用场景就是让执行的代码按照指定的次数重复执行
2、赋值运算符
在 python 中,使用 = 可以给变量赋值
在算术运算时,为了简化代码的编写,python 还提供了一系列的与算术运算符对
应的赋值运算符
注意:赋值运算符中间不能使用空格
+=
eg: a+=b 等效于 a = a + b
-=
*=
/=
//=
%=
‘**=’
3、python 中的计数方法
常见的计数方法有两种,可以分为
自然计数法(从 1 开始) – 更符合人类的习惯
程序计数法(从 0 开始) – 几乎所有的程序语言都选择从 0 开始计数
循环计算
在程序开发中,通常会遇到利用循环重复计算的需求
遇到这种情况:
1.在 while 上方定义一个变量,用于存放最终的计算结果
2.在循环体内部,每次循环都用最新的计算结果,更新之前定义的变量
i = 1
while i <= 6:
print 'hahahaha'
i += 1
# (前100偶数和)
i = 2
s = 0
while i <= 100:
s += i
i += 2
print '%d' % s
# (前100累加)
i = 1
s = 0
while i <= 100:
s += i
i += 1
print '%d' % s
4.break 和 continue
break 和 continue 是专门在循环中使用的关键字
break 某一条满足时,退出循环,不再执行后续重复的代码
continue 某一条满足时,不执行后续重复的代码,其他条件统统要执行
break 和 continue 只针对当前所在循环有效
i = 1
#break
while i < 10:
if i == 3:
break
print i
i += 1
print 'over!'
#continue
while i < 10:
# i += 1
if i == 3:
continue
i += 1
print i
5、whlie的嵌套
【1】在控制台连续输出五行*,每一行星号的数量依次递增
i = 1
while i <= 5:
j = 1
while j <= i:
print '*',
j += 1
print ' '
i += 1
【2】九九乘法表
i = 1
while i <= 9:
j = 1
while j <= i:
print '%d * %d = %d\t' % (i, j, i * j),
j += 1
print ' '
i += 1
字符串的转义字符
\n:在控制台输出一个换行符制表符的功能是在不使用表格的情况下在垂直方向按列对齐文本
\t:在控制台输出一个制表符,协助在输出文本时垂直方向保持对其
不加\t 无法对齐
六、for语句
1.在什么情况下可以使用for语句
while语句非常灵活,可用于在条件为真时反复执行代码块,这个在通常情况下很好用,但有时候你可能根据需要进行定制。一种这样的需求是为序列(或其他可迭代对象)中每个元素执行代码块。为此,可使用for语句
2.用法
鉴于迭代(也就是遍历)特定范围内的数是一种常见的任务,Python提供了一个可创建范围的内置函数
range的用法
range(stop): 0~stop 1
range(start,stop):start-stop 1
range(start,stop,step): start~stop step(步长)
for 变量 in range(10):
循环需要执行的代码
# 1.求1~100之间的所有偶数之和
sum = 0
for i in range(2,101,2):
sum += i
print sum
# 2.求1~100之间的所有奇数之和
sum1 = 0
for i in range(1,101,2):
sum1 += i
print sum1
# 3.用户输入一个整型数,求该数的阶乘
# 3 = 3*2*1
num = int(raw_input('Num:'))
res = 1
for i in range(1,num+1): # num:3 rang(1,4)== 1,2,3
res = res * i
print '%d 的结果是:%d' %(num,res)