Python中的条件判断及循环语句主要有:if语句,for语句,while语句,continue语句,break语句,pass语句,其中除了pass语句外,其他的几种语句我们都在C++中遇到过,其基本逻辑和使用用法也是非常的相似。
(1)if语句
Python中if语句和C++中if语句基本逻辑是一样的,均为基础的条件判断语句,其主要用法和注意事项我们来看几个简单的例子:
#if语句
age=16
if age<18: ##此处必须有冒号:
print('18岁以下不能')##Python为强缩进语言,此处必须缩进
print('yes')#相同的缩进,视为一起的代码块
print('no')
#输入函数input()
score=input('请输入成绩:')#默认为str型,若想便形式则前面加,如float(input())
print(score,type(score))
print('该学生的成绩为:'+score)
print(type(score))
#简单的if else 语句
age=float(input('请输入年龄:'))
if age<18:##此处必须有冒号:
print('18岁以下不能')##Python为强缩进语言,此处必须缩进
else:
print('yes')#相同的缩进,视为一起的代码块
##多重判断,if elif
num=int(input('请输入一个数字:'))
if num==3:
print('y')
elif num==4:
print('n')
elif num==6:
print('ok')
else:
print('其他情况')
输出结果:
(2)for循环语句
Python中for循环语句和C++用法几乎是一样的
lst=list(range(10))#创建列表
for i in lst[:5]:#for循环打印字符串
print('yes')
age={'Jack':18,'Alex':17,'Marry':20}#创建字典
for keys in age.keys():
print(keys)
##嵌套循环
for i in range(10):
for j in range(3):
print(i,j)
##遍历打印字符串
st=input('请输入字符串:')
for s in st:
print(s)'''
'''#生成一个等差数列
s=0
a=int(input('请输入首项:'))
b=int(input('请输入公差:'))
c=int(input('请输项数'))
for i in range(c):
an=a+b*i
s=s+an
print(an)
##生成一个字典
lst1=['a','b','c']
lst2=['1','2','3']
m=[]
for i in range(3):
lsti=[lst1[i],lst2[i]]
m.append(lsti)
print(m)
dic=dict(m)
print(dic)
输出结果:
(3)while循环语句
使用while语句时要注意不要造成无限循环的情况
##无限循环
'''cout=0
while cout<9:
print('The count is:',cout)
cout=cout+1'''
'''var=1
while var<20:
var=float(input('请输入一个数字:'))
print('var=%s'%var)#若输入var=1则无限循环'''
##while -else
count=0
while count<5:
print('count小于5')
count+=1
else:
print('count大于等于5')
输出结果:
(4)break语句
break语句即终止循环,和C++中用法类似,是需要和其他循环语句配套使用的
s=0
n=1
while n>0:
s=s+n
n+=1
if n==20:
break#中止循环
print(s)
s=0
for i in range(20):
for j in range(3):
s=s+(i*j)
print('第%i次循环'%(i+j))
if s>20:
break
print(s)
输出结果:
(5)continue语句
s=0
for i in range(20):
if i%2==0:
s+=i
print(s)
else:
continue#条件满足时停止本次循环
print('i')
print('第i次运算'%(i/2))
print('结果为%i'%s)
输出结果:
(6)pass语句
pass语句时Python中的数据类型,是空语句,使用时是为了保证程序结构的完整性,既不终止循环也不跳过
for letter in 'Python':
if letter =='h':
#pass是空语句,为了保持程序结构完整性(不中断也不跳过)
continue
print('当前字母:h,但是我pass了')#用continue停止当次循环
print('当前字母:',letter)
print('Good Bye')
输出结果: