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 的参数.在 ...
随机推荐
- 跨域常见解决方案jsonp,cors示例
方案 JSONP jsonp需要后端进行配置,并且前端需要动态生成script标签通过callback调用函数进行操作的跨域解决方案 不建议使用该方案: 前后端均需进行配置处理,增加了工作量 ...
- 关于token的理解
什么是token token的意思是“令牌”,是服务端生成的一串字符串,作为客户端进行请求的一个标识. 当用户第一次登录后,服务器生成一个token并将此token返回给客户端,以后客户端只需带上这个 ...
- cocos2dx基础篇(6) 定时器schedule/update
定时器在大部分游戏中是不可或缺的,即每隔一段时间,就要执行相应的刷新体函数,以更新游戏的画面.时间.进度.敌人的指令等等.cocos2dx为我们提供了定时器schedule相关的操作.其操作函数的定义 ...
- RSA加密 抛异常 algid parse error, not a sequence
JDK1.8环境 参考:BouncyCastle的使用:https://blog.csdn.net/qq_29583513/article/details/78866461 可解决 公钥解密 私钥加密 ...
- layer弹出框的简易封装和使用
1. 封装layer 下载layer绿色版和jquery引入页面 <!DOCTYPE html> <html lang="zh-CN"> . . . < ...
- 生成url的二维码图片
<?php require_once "./phpqrcode.php"; //生成二维码 $img = \QRcode::png("https://www.bai ...
- scrapy架构图与执行流程
概览 本文描述了Scrapy的架构图.数据流动.以及个组件的相互作用 架构图与数据流 上图中各个数字与箭头代表数据的流动方向和流动顺序,具体执行流程如下: 0. Scrapy将会实例化一个Crawle ...
- Berland Army CodeForces - 883B (贪心,拓扑排序)
大意: n个点, 点$i$的等级为$r_i$, 只给出部分点的$r$值, $r_i$的范围为[1,k], 且[1,k]都至少有一个. 给定m条有向边, (x,y)表示$r[x]>r[y]$, 求 ...
- Java Script 基本知识点
JavaScript是一种基于对象和事件驱动的脚本语言,它提供了一些专有的类.对象及函数 1.基本数据类型 JavaScript提供了4种基本的数据类型用来 ...
- oracle的基本情况和一些基本概念
Oracle Database,又名Oracle RDBMS,或简称Oracle.是甲骨文公司的一款关系数据库管理系统.它是在数据库领域一直处于领先地位的产品.可以说Oracle数据库系统是目前世界上 ...