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:Springmvc框架2(Ajax,Json,Interceptor,Upload,Exception)
1.springmvcAjax: springmvc.xml: <?xml version="1.0" encoding="UTF-8"?> < ...
- LeetCode.977-排序数组的平方(Squares of a Sorted Array)
这是悦乐书的第369次更新,第397篇原创 01看题和准备 今天介绍的是LeetCode算法题中Easy级别的第231题(顺位题号是977).给定一个整数数组A按有序递增顺序排序,返回每个数字的平方, ...
- c语言l博客作业11
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在 ...
- axios中设置Content-Type不生效的问题
Api:axios(config): config中无data字段时,headers里的Content-Type无效果,这应该出于优化的层面,此时的Content-Length=0,无需向服务端提供C ...
- Java第三周总结报告
本周做了什么? 本周利用Java语言重新回顾了条件结构与循环结构和字符串的处理等问题,认识到了Java与C/C++的在这两个方面的不同. 下周准备做什么? 学习Java面向对象的有关知识,包括对象与类 ...
- 【洛谷P1886】滑动窗口——单调队列
没想到啊没想到,时隔两个月,我单调队列又懵了…… 调了一个小时,最后错在快读,啊!!!!(不过洛谷讨论真好啊,感谢大佬!) 考前就不推新东西了,好好写写那些学过的东西 题目点这里(我就不粘了自己点一下 ...
- <<C++ Primer>> 术语表 (总) (待补充)
术语表 目录 第 1 章 开始 第 I 部分 C++基础 第 2 章 变量和基本类型 第 3 章 字符串, 向量和数组 第 4 章 表达式 第 5 章 语句 第 6 章 函数 第 7 章 类 第 II ...
- python变量的内存管理
python变量的内存管理 一.变量存在了哪里? 先让我们来看一段代码: height = 100 # 定义变量 # print(100) # print会自动帮你创建一个变量100,打印完之后,马上 ...
- 定位class时空格注意
class属性中间的空格并不是空字符串,那是间隔符号,表示的是一个元素有多个class的属性名称,那定位的时候取其中的一个就行(并且要唯一) Selenium2+python自动化73-定位的坑:cl ...
- git 查看对比的方法log diff
git shortlog 默认情况下,git shortlog 把输出按作者名字排序,但你可以传入 -n 选项来按每个作者提交数量排序. 1.有冲突时可以用 git status查看 2.通过git ...