day_05 运算符 if和while的使用
运算符:
1)算术运算符
+ - * / %(取余) //(地板除,取整)**(幂运算) ,返回一个值
2)比较运算符
3) > >= < <= ==(比较值是否相等) !=(比较值是否不相等) ,返回一个布尔值
4) 赋值运算符
= += -= *= /= **=
5)逻辑运算符(把多个条件同时叠加)
and or not ,加括号优先级最高
6)身份运算符(id)
x= 257
y = x
z= 257 print(id(x) == (id(y))) # True
print(x is y) # is比较的是内存地址 True
print(x is not y) # is not判断是否不等于
print(not x is y) #False
print(id(x) == id(z)) #False
print(x is z) #False
7) 位运算符
60 13 十进制 0,1,2,3,4,5,6,7,8,9,10
0,1,2,3,4,5,6,7,8,9,逢十进一位,10,11,12,13,...19,20...90,91,92,..99,100
0和1 二进制 0,1,逢二进一位,10,11,100,101,111,1000 0 # 0000 0000 --》0
1 # 0000 0001 --》 1
10 # 0000 0010 --》 2
11 # 0000 0011 --》 3
100 # 0000 0100 --》 4
101 --》 5
110 --> 6
111 --> 7
0100 0011 -->
方法一,计算器:67
方法二:手工计算
9892 == 2*10**0 + 9*10**1 + 8*10**2 + 9*10**3
print(2*10**0 + 9*10**1 + 8*10**2 + 9*10**3)
01000011 == 1*2**0 + 1*2**1 + 0 + 0 + 0 + 0 + 1*2**6 + 0
print(1*2**0 + 1*2**1 + 0 + 0 + 0 + 0 + 1*2**6 + 0) 8)成员运算符:判断元素是否在容器类元素里面(字符串)
class_student_lt = ['s1','s2','s3']
print('s1' in class_student_lt) # True
print('s1' not in class_student_lt) # False
print('s4' in class_student_lt) # False
s = 'nick'
print('n' in 'nick')
2. 流程控制之if判断
多分支结构1:
if 条件1:
code1 条件1成立执行code1
elif 条件2:
code2 条件1不成立条件2成立执行code2
elif 条件3:
code3 条件1和2不成立,条件3成立执行code3
elif可以有无限个。。。
coden
else:
code4 所有条件都不成立,执行code4
# elif事例
height=input('请输入你的身高》》》:').strip()
height=int(height)
if height>130:
print('全票')
elif height>70:
print('半票')
elif height>30:
print('可能你需要付费一点点!')
else:
print('免费')
多分支结构1:
if 条件1:
code1 条件1成立执行code1,再判断下面的if条件是否成立
if 条件2:
code2 条件2成立执行code2,再判断下面的if条件是否成立
if 条件3:
code3 条件3成立执行code3,再判断下面的if条件是否成立
if可以有无限个。。。
coden
else:
code4 所有条件都不成立,执行code4
# if 事例
height=input('请输入你的身高》》》:').strip()
height=int(height)
if height>130:
print('全票')
if height>70 and height<=130:
print('半票')
if height>30 and height<=70:
print('可能你需要付费一点点!')
else:
print('免费')
多个同一级别if和elif建立多分支结构的区别:
如果程序中判断事件过多,全部用if的话,会遍历整个程序,用elif程序运行时,只要if或后续某一个elif之一满足逻辑值为True,则程序执行完对应输出语句后会自动结束该轮if—elif,即不会再冗余地执行后续的elif或else,提高了程序的运行效率。
3.流程控制之while循环
break:结束当前层while循环,continue:跳出本次while循环,进入下一次循环
while 条件:# 条件成立运行代码,不成立结束while循环
代码 # 代码执行结束后会进入下一次循环(再一次判断条件)
# while+条件 count=0
t_age=18
while count<3:
# if count==3:
# print('不好意思,只有三次机会!')
# break
age=input('请输入你的年龄:')
age=int(age)
if age>t_age:
print('太大了')
elif age<t_age:
print('太小了')
else:
print('恭喜你猜对了!')
count += 1
# while + break count = 0
while 1:
if count == 100:
break # break终止循环
count += 1
print(count) print('bzr')
# while + continue 不打印50 count = 0
while 1:
if count == 100:
break # break终止循环
count += 1
if count == 50:
continue # continue跳出本次循环,不执行下面的代码
print(count) print('bzr')
# 打印1-100内偶数(不包括[22,46,68,98])的和
# 分解题目 count = 0
sum_count = 0
while True: if count == 100:
break count += 2
if count in [22, 46, 68, 98]:
continue
sum_count += count
print(sum_count)
# while + else 仅作了解(非用不可可以使用,不要和if。。else混了) count = 0
while count < 100:
count += 1
print(count)
else:
print('没有被break干掉我就能出来') #打印结果:除了1~100之外,没有break掉,else内print也能打印
# while + else
count=0
while True:
count+=1
print(count)
if count==100:
break
else: # 没有被break干掉就执行,被break终止了就不执行了
print('没有被break干掉我就能出来') # 可以判断while是否被break终止 # 打印结果: else 内的print不能打印,上面有break终止循环了。
# 猜年龄游戏 只有三次机会 count=0
t_age=18
while count<3:
age=input('请输入你的年龄:')
age=int(age)
if age>t_age:
print('太大了')
elif age<t_age:
print('太小了')
else:
print('恭喜你猜对了!')
count += 1
day_05 运算符 if和while的使用的更多相关文章
- shell运算符
原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. #!/bin/bash v ...
- SQL Server-聚焦APPLY运算符(二十七)
前言 其实有些新的特性在SQL Server早就已经出现过,但是若非系统的去学习数据库你会发现在实际项目中别人的SQL其实是比较复杂的,其实利用新的SQL Server语法会更加方便和简洁,从本节开始 ...
- java中的移位运算符:<<,>>,>>>总结
java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : 右移运算符,num >& ...
- 我的MYSQL学习心得(五) 运算符
我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- .NET 基础 一步步 一幕幕[运算符、占位符、转义符]
运算符.占位符.转义符 好吧,在五局全胜之后,终于升到了三个钻,距离一个星星还有一大段距离,忽然想起来今天的博客还没写,果断坑队友,来写博客了....感觉以后还是每天更新一篇比较好.要不晚上就该熬 ...
- ECMASCript2015 提案 stage-3的对象展开运算符
看源码时看到如下的代码 export default { //通过mapActions将actions映射到methods里 methods: { ...mapActions([ 'updateSta ...
- JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)
1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...
- JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)
1.3种原始表达式 1.直接量: 1.23 //数字直接量 “hello” //字符串直接量 ...
- LINQ to SQL语句(18)之运算符转换
运算符转换 1.AsEnumerable:将类型转换为泛型 IEnumerable 使用 AsEnumerable<TSource> 可返回类型化为泛型 IEnumerable 的参数.在 ...
随机推荐
- java:JQueryReview
Important: 1.id选择器,class选择器,标签选择器: $("#id"); $(".class"); $("标签"); 2.j ...
- Hibernate初了解
Hibernate是一个开放源代码的对象关系映射框架, 它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate可以应用在任何使用JD ...
- SQL注入漏洞详解
目录 SQL注入的分类 判断是否存在SQL注入 一:Boolean盲注 二:union 注入 三:文件读写 四:报错注入 floor报错注入 ExtractValue报错注入 UpdateXml报错注 ...
- 17.DRX操作时序
DRX状态转移 OnDuration:监听态,监听并接收PDCCH,也叫激活态 StayActive:保持激活状态(做完业务后,继续监听一段时间和一个非激活定时器时间,或者还有缓存) off:off状 ...
- 深入理解java:4.1. 框架编程之Spring MVC
说到java的mvc框架,struts2和springmvc想必大家都知道, Spring MVC是当前最优秀的MVC框架,自从Spring 2.5版本发布后,由于支持注解配置,易用性有了大幅度的提高 ...
- [转帖]VPS、虚拟主机、云主机的区别
引用知乎网友通俗的例子解释: https://www.cnblogs.com/fjping0606/p/9993849.html 其实 应该是 vps 只是 单台物理机上面的虚拟机 云主机 可能是资源 ...
- Linux系统装mycat
最近在Linux系统中装载了一下mycut,记录过程以及所遇到的异常 首先是mycut的压缩包,直接放到linux中解压即可 链接:https://pan.baidu.com/s/1qo7z4tNvk ...
- 360度3D 旋转插件
Circlr插件是一款基于jQuery的可以对图片进行360度全方位旋转展示的插件.Circlr通过按一定角度规律拍摄的产品图片,制作出可以使用鼠标拖动.鼠标滚轮和移动触摸来进行图片逐帧旋转的效果.比 ...
- python基础之迭代器生成装饰器
基本概念 1.容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中.通常这类数据结构把所有的元 ...
- kafka 教程(四)-原理进阶
kafka 最初由 Linkedin 公司开发,是一个 分布式.支持分区.多副本的,基于 zookeeper 协调的分布式发布订阅消息系统,该公司在 2010 年将 kafka 贡献给 apache ...