day5:isinstance&代码块&分支&while循环
1.判断类型 isinstance
语法:
用法一:
isinstance(要判断的值,要判断的类型) 返回True 或者 False
用法二:
isinstance(要判断的值,(可能的类型1,可能的类型2,可能的类型3 ... ) ) 如果有一个类型满足,返回的是True 否则 返回False
数据类型:
int float bool complex str list tuple set dict
2.代码块 : 以冒号作为开始,用缩进来划分作用域
作用域:作用的区域,作用的范围
代码块的注意点:要么全都是一个tab缩进,要么全都是4个空格,不能混合使用
3.流程控制
流程: 代码执行的过程
控制: 对代码执行过程的一种把控
三大结构:
1.顺序结构 : 默认代码依次从上到下执行
2.分支结构 : 4种
3.循环结构 : for while
分支结构:
(1)单项分支
(2)双项分支
(3)多项分支
(4)巢状分支
4.单项分支
if 条件表达式:
code1
code2
当条件表达式成立,返回True,执行对应的代码块,反之不执行
例子:
liucaixia = "女生"
if liucaixia == "女生":
print("给他买一些好吃的")
print("给他买一些好玩的")
print("陪她出去逛街")
print("陪她买化妆品")
5.双项分支
if 条件表达式:
code1
code2
else:
code3
code4
例子:
liucaixia = "抠脚老汉"
if liucaixia == "女生":
print("加他微信")
print("加他手机")
print("收集他的兴趣爱好")
print("以后多联系")
else:
print("给你一榔头~")
如果条件表达式成立,执行if对应的代码块
如果条件表达式不成立,执行else对应的代码块
if 代码块也叫做真区间
else 代码块也叫做假区间
6.input 等待用户输入字符串,接受的数据是字符串
username = input("请输入您的用户名:")
password = input("请输入您的密码:")
if username == "admin" and password == "":
print("登录成功~")
else:
print("登录失败~")
7.多项分支 (多选一)
语法:
if 条件表达式1:
code1
code2
elif 条件表达式2:
code1
code2
elif 条件表达式3:
code1
code2
else:
code...
例子:
youqian = False
youfang = False
youche = False
youyanzhi = False
youtili = False if youqian == True:
print("我就嫁给你1")
elif youfang == True:
print("我就嫁给你2")
elif youche == True:
print("我就嫁给你3")
elif youyanzhi == True:
print("我就嫁给你4")
elif youtili == True:
print("我就嫁给你5") else:
print("你是个好人")
如果条件表达式1成立,返回True,执行对应的代码块,反之则向下执行
如果条件表达式2成立,返回True,执行对应的代码块,反之则向下执行
如果条件表达式3成立,返回True,执行对应的代码块,反之则向下执行
直到最后,任何条件都不满足,执行else这个分支的代码块.
elif 可以出现0次或者多次
else 可以出现0次或者1次
8.巢状分支 (单项分支,双项分支,多项分支的互相嵌套)
youqian = False
youfang = False
youche = False
youyanzhi = False
youtili = False if youqian == True:
if youfang == True:
if youche == True:
if youyanzhi == True:
if youtili == True:
print("老娘今天死活要嫁给你,等着接盘吧,兄弟")
else:
print("恭喜你~ 成为我的1号备胎")
else:
print("你可以上韩国整整容,整成金城武再来.")
else:
print("出门左拐,乘2路汽车,2站之后下是你家,不送了,老弟.")
9.循环结构: while 循环
特点:减少冗余的代码,提升代码的效率
语法:
while 条件表达式:
code1...
code2...
1.初始化一个变量
2.写上循环的判断条件
3.自增自减的变量值
# 计算1~100的累加和
# 方法一
i = 1
total = 0
while i<=100:
# 把所有的i值全部累加到total这个变量中
total += i # total = total + i
i+=1 print(total) # 方法二
total = 0
i = 1
sign = True
while sign:
total += i # total = total + i
i+=1 # 手动加上终止循环的条件
if i == 101 :
sign = False
print(total)
-------------------------------------------------------------------------
单项循环的练习:
1.打印一行十个小星星,奇数个为★ , 偶数个位☆
i = 0
while i<10:
# 写上代码的逻辑
if i % 2 == 0:
print("★",end="")
else:
print("☆",end="")
i+=1
2.一个循环打印十行十列的小星星
i = 0
while i < 100:
# 打印星星
print("*",end="") # 打印换行
if i % 10 == 9:
print()
i+=1
3.一个循环打印十行十列隔列换色的小星星
i = 0
while i < 100:
# 打印星星
# print("*",end="")
if i % 2 == 0:
print("★",end="")
else:
print("☆",end="") # 打印换行
if i % 10 == 9:
print()
i+=1
4.一个循环打印十行十列隔行换色的小星星
i = 0
while i<100: # 打印星星
if i // 10 % 2 == 0:
print("★",end="")
else:
print("☆",end="") # 打印换行
if i % 10 == 9:
print() i+=1
day5:isinstance&代码块&分支&while循环的更多相关文章
- day5 python代码块,流程控制
判断类型 # isinstance 用法一 isinstance(值,类型)--------------->bool isinstance(5,int)-----------------> ...
- 系统封装的dispatch系列代码块引起的循环引用
整整一天的时间都在找内存泄漏,唯独遗漏了这个代码块,结果就是它,希望大家以后注意. dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)( ...
- java 多线程:线程通信-等待通知机制wait和notify方法;(同步代码块synchronized和while循环相互嵌套的差异);管道通信:PipedInputStream;PipedOutputStream;PipedWriter; PipedReader
1.等待通知机制: 等待通知机制的原理和厨师与服务员的关系很相似: 1,厨师做完一道菜的时间不确定,所以厨师将菜品放到"菜品传递台"上的时间不确定 2,服务员什么时候可以取到菜,必 ...
- MSIL 教程(二):数组、分支、循环、使用不安全代码和如何调用Win32 API(转)
转自:http://www.cnblogs.com/Yahong111/archive/2007/08/16/857574.html 续上文[翻译]MSIL 教程(一) ,本文继续讲解数组.分支.循环 ...
- python入门:BREAK 的用法 跳当前循环后,不再执行下面代码块
#!/urs/bin/env python # -*- coding:utf-8 -*- # BREAK 的作用 跳当前循环后,不再执行下面代码块 while True: ') break ') #w ...
- Intellij idea 生成for循环代码块
itar 生成array for代码块 for (int i = 0; i < array.length; i++) { = array[i]; } itco 生成Collection迭代 fo ...
- PowerShell随笔2_分支 选择 循环 特殊变量
PowerShell特殊变量: PowerShell的特殊变量由系统自动创建.用户自定义的变量名称应该不和特殊变量相同. $^ :前一命令行的第一个标记 $$ :前一命令行的最后一个标记 $_ :表示 ...
- day5.流程控制及while单项循环
一.判断类型 isinstance 1.语法 """ 语法: # 用法一 isinstance(要判断的值,要判断的类型) 返回True 或者 False # 用法二 i ...
- PHP 分支与循环
一.概述: 上面一章我们讲解了PHP当中的运算符和表达式,通过上面的知识点我们就可以完成一些基本的运算操作了.但是涉及到一些比较复杂的逻辑,分支与循环就必不可少了.通过分支和循环的结合使用可以使业务更 ...
随机推荐
- c常用函数-strcat 和 strncat
strcat 和 strncat strcat与strncat都是字符串连接函数,功能上稍有区别: strcat可以把一个字符串的全部内容复制到另一个字符串的后面; strncat则是把一个字符串的指 ...
- JSON案例
原文链接:https://zhuanlan.zhihu.com/p/62763428 json字符串->JSONObject 用JSON.parseObject()方法即可将JSon字符串转化为 ...
- Mac下安装octave
1.首先安装Command Line Tool xcode-select --install2.Mac OSX平台下,用神器Homebrew安装 curl -LsSf http://github.co ...
- 迁移AndroidX
1. 前言 AndroidX replaces the original support library APIs with packages in the androidx namespace. O ...
- [CentOS 7]挂载ntfs格式U盘
在我们将U盘插入装有CentOS的系统时,经常会出现如图所示的错误提示.这是因为linux系统并不能兼容NTFS的文件系统.其解决方法如下(建议先进入root模式): 1.首先下载"ntfs ...
- 解决错误 CS1617 Invalid option '7.1' for /langversion; must be ISO-1, ISO-2, Default or an integer in range 1 to 6.
解决错误 CS1617 Invalid option '7.1' for /langversion; must be ISO-1, ISO-2, Default or an integer in ra ...
- 菜渣开源一个基于 EMIT 的 AOP 库(.NET Core)
目录 1,快速入门 1.1 继承 ActionAttribute 特性 1.2 标记代理类型 2,如何创建代理类型 2.1 通过API直接创建 2,创建代理类型 通过API 通过 Microsoft. ...
- 使用Jmeter如何测试下载接口
性能测试过程中,有时候需要对下载类的功能做压测,有些同学没有这方面的测试经验,比较迷茫,本文简单介绍下如何测试下载类的请求1.首先使用fiddler抓包,知道是一个http类型的请求,有一个post请 ...
- JAVA环境配置(WIN10之64位)
1.下载java开发工具包JDK,https://www.oracle.com/technetwork/java/javase/downloads/index.html进入首页, 点击下载页: 点击下 ...
- 暑假集训Day2 状压dp 特殊方格棋盘
首先声明 : 这是个很easy的题 可这和我会做有什么关系 题目大意: 在n*n的方格棋盘上放置n个车,某些格子不能放,求使它们不能互相攻击的方案总数. 注意:同一行或同一列只能有一个车,否则会相互攻 ...