目录
分支结构
在判断条件中,相比于c/c++的判断结果为0或者非0,python是更为直接的bool值:true和false:
a,b=10,20
print(a>b)
print(a<b)
结果:
而判断这个判断结果的方式则相差不大。比如条件成立就是true,不成立就是false,如果条件直接就是一个非0的数则是true,是0则是false等等
条件的bool值可以通过bool()函数来看
print(bool(0))
print(bool(10))
结果:
再来说python中的if结构,较为简单,else if简写为了elif,if和elif后也不需要小括号,在判断条件后加一个:即可,后面就算跟了多条语句也不需要大括号,并且判断条件支持类似10<=x<=20这样的写法
grade=int(input('输出成绩:'))
if grade>=80:
if grade>=90:
print('成绩优秀')
print('等级为A')
else:
print('成绩良好')
print('等级为B')
elif 60<=grade<80:
print('成绩一般')
print('等级为C')
else:
print('不及格')
结果:
也可以将if...else...简写为这种形式:
x if... 判断条件 else... y
a,b=10,20
max = a if a > b else b
print(max)
结果:
pass语句
pass语句就是一个空语句,为了保证程序的完整,用作占位语句
a,b=10,20
if a>b:
pass
else:
pass
结果:
循环结构
range()函数
用于生成一个整数序列,返回值是一个迭代器对象。
创建range对象有三种方式:range(stop):创建一个【0,stop)之间的整数序列,步长为1,
range(start,stop):创建一个【start,stop)之间的整数序列,步长为1,
range(start,stop,step):创建一个【start,stop)之间的整数序列,步长为step
while
同if..else一样,循环结构也不像c/c++一样需要小括号和大括号,写起来很简便:
a=0
sum=0
while a<10:
sum+=a
a+=1
print(sum)
结果:
for-in
其实就是c/c++中的for循环,写法有所差异
语法结构:
for (自定义的变量) in (可迭代对象)
( 循环体)
for i in 'hello':
print(i)
for i in range(3):
print(i)
for _ in range(10):
pass
结果:
如果不需要使用到变量的话,就使用_代替
在print中使用end=‘\t’可以完成不换行输出:
for i in 'hello':
print(i,end='\t')
print('\n')
for i in range(3):
print(i,end='\t')
print('\n')
结果:
break和continue
用法和c/c++中一致,这里就不再赘述
else
除了和if搭配之外,还有与whlie,for..in..搭配
与while,for...in... 搭配时,是从循环开始到结束没有遇上break时执行
for _ in range(3):
string=input('请输入123:')
if string=='123':
break
else:
print('输入错误')
else:
print('三次输入错误')
结果: