分支与循环
Posted l0928
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分支与循环相关的知识,希望对你有一定的参考价值。
1.判断数据类型:isinstance
语法:
1.1用法一:
isinstance(要判断的值,要判断的类型) 返回True或者False
res=isinstance(‘abc‘,str)
1.2用法二:
isinstance(要判断的值,(可能的类型1,可能的类型2,可能的类型3))如果有一个类型满足,返回的是True 否则 返回False
isinstance(5,(int,float,bool,str,set,tuple,dict)
2.代码块
以冒号开始,用缩进来划分作用域(作用的区域,范围),且要么全是一个tab缩进,要么全是4个空格,不能混合使用
if 10==10:
print(1)
print(2)
print(3)
3.三大结构之顺序结构:默认代码依次从上到下执行
4.三大结构之分支结构:(单项分支,双项分支,多项分支,巢状分支)
4.1单项分支:
语法:
if 条件表达式:
code1
code2
当条件表达式成立,返回True,执行相应的代码,反之不执行;
4.2双项分支:
语法:
if 条件表达式:
code1
code2
else:
code3
code4
当条件表达式成立,执行if对应的代码块(也叫真区间);如果条件表达式不成立,则执行else相对应的代码块(也叫假区间);
#input等待用户输入字符串,接受的数据默认是字符串
name=input("输入您的姓名:")
网站登录:
username=input("输入您的姓名:")
password=input("输入您的登录密码:")
if username==‘admin‘ and password==‘000‘:
print(‘登录成功~‘)
else:
print(‘登录失败~‘)
4.3多项分支:
语法:
if 条件表达式1:
code1
code2
elif 条件表达式2:
code3
code4
elif 条件表达式3:
code5
code6
else:
code
是在众多条件表达式中依次向下选一个进行执行,如果条件表达式1成立,则返回True执行对应的代码块,反之向下执行,如果条件表达式2成立则返回True,执行对应的代码块,反之向下执行...直到最后,所有条件表达式都不成立,则执行else这个分支的代码块.
#elif可以出现多次或者0次;else可以出现0次或1次.
4.4巢状分枝:(单项分支,双项分支,多项分支的相互嵌套)
if math==100:
if English>=90:
if history>=90:
if chinese>=95:
print(‘success‘)
else:
print(‘you will be good‘)
else:
print(‘you have to struggle‘)
else:
print(‘loser‘)
5.循环控制:
5.1while循环
特点:减少冗余代码,提高代码效率
语法:
while 条件表达式:
code1
code2
tips:(1)初始化一个变量
(2)写上循环判断条件
(3)自增自减的变量中
5.1.1打印1~100
i=1
while i<=100:
print( i ) #在此位置写上要执行的逻辑代码
i+=1
5.1.2计算1~100的累加和
方法一:
i=1
sum=0
while i<=100:
sum+=i
i+=1
print(sum)
方法二:(利用死循环)
i=1
sum=0
sign=True
while sign:
sum+=i
i+=1
if i=101:
sign=False
print(sum)
5.1.3打印一行是个*
i=0
while i<10:
print(‘*‘,end=‘‘) #help查看帮助文档,help(print)===>print默认end=‘ ‘
i+=1
5.1.4通过打印变量实现一行十个小星星
#借助字符串的拼接:‘qwe‘+‘abc‘==>‘qweabc‘
i=0
strvar=‘‘
while i<10:
strvar+=‘*‘
i+=1
print(strvar)
5.1.5打印一行十个,奇数为*偶数为#
i=0
while i<10:
if i%2==0:
print(‘*‘)
else:
print(‘#‘)
i+=1
#要将事物分为n个种类则除以n取余,可以得到n个分类,且范围为0~(n-1)
5.1.6一个循环打印十行十列的*
i=0
while i<100:
print(‘*‘,end=‘‘) #打印星星
if i%10==9:
print() #打印换行
i+=1
5.1.7一个循环打印十行十列隔列# 和*
i=0
while i<100:
if i%2==0:
print(‘#‘,end=‘‘)
else:
print(‘*‘,end=‘‘) #打印图案
if i%10==9:
print() #打印换行
i+=1
5.1.8一个循环隔行打印#和*
tips:任意数和n进行地板除,可以出现n个相同的数字
0~9 //10 会出现10个相同的0
10~19 //10 会出现10个相同的1
20~29 //10 会出现10个相同的0
i=0
while i<100:
if i // 10 % 2==0:
else:
print(‘*‘,end=‘‘)
if i%10==9:
print()
i+=1
以上是关于分支与循环的主要内容,如果未能解决你的问题,请参考以下文章