operator和if结构
1.比较运算符:>,<,==,!=,>=,<=
注意:所有比较运算符的结果都是布尔值
举例:
1
2
3
4
5
6
7
8
9
print(100>10)
print(100<1000)
print(100<10)
print(100<1000)
print(100==100) #True
print(100==10) #False
print(100!=100) #False
print(100!=10) #True
print(100<=100) #True
- “=”将运算结果赋值给变量
1
2
3result=10>=1
result1=100+1
print(result,result1)
2.逻辑运算符:and,or,not
注意:所有的逻辑运算符的结果都是布尔值,操作对象也都是布尔值
a.逻辑与运算:and
- 运算规则:两个都为True,结果才是True;只要有一个是False,结果都是False。
- 应用:要求多个条件同时满足的时候,使用and将多个条件满足在一起
- 举例:分数不低于90并且年龄大于25
1
print(score>=90 and age>25)
b.逻辑或运算:or
- 运算规则:两个都为False,结果才是False;只要有一个是True,结果就是True。
- 应用:要求多个条件中至少有一个条件满足的时候,使用or将多个条件连接在一起
- 举例:获取奖学金的条件:学习成绩大于90分或者操评分大于95分
1
print('是否获得奖学金:',score1>90 or score2>95)
c.逻辑非运算:not
- 运算规则:True变False,False变True
- 应用:对一个条件进行否定
- 举例:进入网吧的条件:年龄不小于18
1
2
3age=9
print('是否能进入网吧:', not age<18) #写法1
print('是否能进入网吧:', age>=18) #写法2
3.赋值运算符:=,+=,-=,*=,/=,//=,%=,**=
注意:所有的赋值运算符左边要求都必须是变量;复合赋值运算符左边要求是变量以外,这个变量还必须已经赋过值
a.= :直接将=右边的值赋给左边的变量
b. +=,-=,*=,/=,//=,%=,**=
- 变量 += 值 —-相当于 变量=变量+值 赋值过程:将原变量中的数据取出来,和后边的值相加,然后将最新的结果重新赋给变量:
1
2
3num2=10
num2+=2 #num2=num2+2
print(num2) #num2=12
4.运算符的优先级
a.数学运算符>比较运算符>逻辑运算符>赋值运算符
b.先算优先级高的,在算优先级低的。如果有括号,先算括号里面的,不要让数字参与逻辑运算,没有任何意义。
number
python 中和数字相关的类型有4种:int,float,bool,complex
1.int(整型)
- 整型包含了数字中所有的整数,包括正整数,负整数和0;例如:0,1,-100
1
print(10,-100,200,0)
2.float(浮点型)
- 浮点型包含数字中所有的小数;例如:0.0,0.12,-3.14
- 支持科学计数法:2e3
3.bool(布尔)
- 布尔只有True和False两个值;实质,当布尔参与数字运算的时候True就是1,False就是0
- 举例:
1
2print(True==1)
print(False==0)
4.complex(复数)
- 复数是指包含实部和虚部的这种数:10+2j,19j,-10j
- 举例:
1
print(10+2j,-10j)
5.获取数据类型:type()
- type(数据) – 获取括号中执行的数据对应的类型
- 举例:
1
2
3type1=type(10+2j)
print(type1)
print(type(True))
6.判断是否是指定的类型:isinstance()
- isinstance(数据,类型)–判断指定的数据是否是指定的类型,结果是布尔值
- 举例:
1
2
3
4
5result = isinstance(10,bool) #判断数字10是否是布尔类型
大专栏 operator和if结构s="line">print(result)
result1 = isinstance(num,int)
print(result1)
7.类型转换:类型名()
- 类型名(数据) —- 将指定的数据转换成指定的类型
- 举例:
1
2
3
4
5
6
7
8num=12.5
new_num = int(num)
print(new_num)
print(float(100))
print(float(True))
print(bool(0)) # 布尔转整型或者浮点型:True-->1/1.0 False-->0/0.0;
# 整型/浮点型转布尔:非0数字--> True 0/0.0--> False
if分支结构
1.分支结构:只有if语句(if条件语句)
a.if语句
- 语法:
- if 条件语句:
语句块
- if - 固定写法,关键字
- 条件语句 - 可以是一个值,一个变量,一个运算表达式。不能是赋值语句
- : - 固定写法,(在python中有冒号的地方一般都会产生缩进)
- 语句块 – 一行或者多行代码(必须和if保持缩进)
- 执行过程:先判断条件语句的结果是否为True(如果不是布尔值就看转换为布尔后是否为True)如果为True就执行语句块对应的代码,否则就不执行语句块对应的代码
应用:某个操作或者某段代码是在满足某个条件下才会执行,不满足条件就不执行的时候就使用if条件语句
1
2
3
4
5
6
7if 100:
print('if语句1')
print('if语句2')
print('语句3')
if 100>10:
print('100大于10')举例:
1
2
3
4#如果age的值大于等于18岁就打印'成年'
age=8
if age>=18:
print('成年')
b.if-else结构和if-elif-else
- 语法:
1
2
3
4#if 条件语句:
# 语句块1
else:
# 语句块2
else后面不跟条件语句
- 执行过程:判断条件语句是否为True(如果不是布尔就转换为布尔再看是否为True),如果为True就执行语句块1,否则执行语句块2
应用:满足条件执行某个操作,不满足条件执行另外的操作,就使用if-else结构
1
2
3
4
5
6
7
8
9
10
11num = 10
if num %2 ==0:
print('偶数')
else:
print('奇数')
if num % 2:
print('奇数')
else:
print('偶数')说明:在if-elif-else结构中,elif可以根据情况有多个,else结构根据情况可以省略
语法:
1
2
3
4
5
6
7
8#if 条件语句1:
# 代码块1
#elif 条件语句2:
# 代码块2
#elif 条件语句3:
# 代码块3
#else:
# 代码块4执行过程:先判断条件语句1是否成立,成立执行代码块1,然后整个if语句结束;条件语句1不成立,就判断条件语句2是否成立,成立执行代码块2,然后整个if语句结束;条件语句2不成立,就判断条件语句3是否成立,成立执行代码块3,然后整个if语句结束;如果前面所有的条件语句都不成立,就执行else后面的代码块。
- 举例:
1
2
3
4
5
6
7
8
9score = 90
if score>90:
print('优秀')
elif 80<=score<=90:
print('良好')
elif 60<=score<=79:
print('及格')
else:
print('不及格')
c.if嵌套
- 在if,elif,else对应的语句中,可以根据情况写一个或者多个其他的if语句结构
1
2
3
4
5
6
7
8
9
10
11score=100
if score>90:
print('优秀')
if score==100:
print('满分')
elif 80<=score<=90:
print('良好')
elif 60<=score<=79:
print('及格')
else:
print('不及格')
str
1.print(100>’90’) 数学运算中数据不能和字符串进行
2.input函数,不管输入的内容是什么,结果都是字符串类型的值
1 |
age = input('年龄:') |
2018-11-19
operator和if结构的更多相关文章
- Freemarker常用技巧
1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...
- Freemarker的常用技巧总结
Freemarker的常用技巧总结 Freemarker视频教程 1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. ...
- [转] Freemarker的常用技巧总结
1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...
- 带你深入理解STL之迭代器和Traits技法
在开始讲迭代器之前,先列举几个例子,由浅入深的来理解一下为什么要设计迭代器. //对于int类的求和函数 int sum(int *a , int n) { int sum = 0 ; for (in ...
- freemark的常用方法
1,截取字符串 有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度 < lt. <= lte. > gt. >= gte < ...
- C++ 理解函数对象与lambda表达式
参考<21天学通C++>第21与第22章节,对函数对象进行介绍,同时通过lambda表达式这一匿名函数对象的简洁方式加深对函数对象的理解.本篇博文的主要内容是: (1) 函数对象的概念: ...
- 结构体内嵌比较函数bool operator < (const node &x) const {}
直接看别人的链接 [http://www.cnblogs.com/ZERO-/p/9347296.html]
- 使用 DBCC IND 查看BTree 和 Heap结构
Table 有两种结构:BTree 和 Heap,一个table的结构必定是其中之一.如果在表上创建clustered index,那么表的结构是BTree:如果表上没有创建Clustered ind ...
- Atitit. 构造ast 语法树的总结attilax oao 1. Ast结构树形12. ast view (自是个160k的jar )22.1. 多条语句ast结构22.2. 变量定义 int b,c; 的ast结构22.3. 方法调用meth1(a=1,b=2,c=3); 的ast结构23. 误解的问题33.1. 语法书子能是个二叉树,实际上多叉树越好..33.2. 非要不个ast放到个s
Atitit. 构造ast 语法树的总结attilax oao 1. Ast结构树形1 2. ast view (自是个160k的jar )2 2.1. 多条语句ast结构2 2.2. 变量定义 in ...
随机推荐
- 移动端 之 触摸事件、Tap事件和swipe事件
触摸事件 touch是一个事件组,意思不止一个事件,是移动端滑动事件组,touchstart touchmove touchend touchcancel touchstart 当刚刚触摸屏幕的时候触 ...
- iOS部分页面横屏显示
在iOS系统支持横屏顺序默认读取plist里面设置的方向(优先级最高)等同于Xcode Geneal设置里面勾选application window设置的级别次之 然后是UINavigationcon ...
- 2019年Unity3D游戏开发前景预测及总结
由于现在随着互联网时代的到来,人们上网玩游戏的越来越多,导致游戏开发人才供不应求,如果你想成为一名优秀的开发者,那么掌握Unity3D开发技术是不可跳过的一环.随着移动互联网的发展,移动端游戏日益盛行 ...
- vue安装插件指定版本
安装插件指定版本 npm install 插件名称@2.9.6 --save 查看需要安装插件的版本记录 npm view 插件名称 versions --json
- MySQL空洞问题解决
原因:Mysql对于BLOB/TEXT值在执行大量删除操作时可能会引起空洞.空洞就是数据虽然删除了,但是依然占用服务器物理空间,会导致性能底下. 解决办法:定期使用OPTIMIZE TABLE进行碎片 ...
- Hough直线and圆环变换(如何检测直线、圆环)
1.霍夫变换 2.cv2.HoughLines() 返回值就是(ρ, θ).ρ 的单位是像素,θ 的单位是弧度.这个函数的第一个参 数是一个二值化图像,所以在进行霍夫变换之前要首先进行二值化,或者进行 ...
- nginx常用编译参数
./configurate --prefix=/app/tengine --user=www --group=www --with-http_v2_module --with-http_ssl_mod ...
- Transmission添加SSL访问
0.准备工作 0.1.在App Center中安装Entware-ng 0.2.以admin用户登录SSH到NAS 0.3.申请SSL证书,可以找免费的申请一个 0.4.公网IP和域名,这个要和SSL ...
- 本地搭建3节点kubernetes
kubernetes本地搭建版本选择 CentOS Linux release 7.7.1908 kubernetesVersion: v1.17.0 weave-kube:2.6.0 ceph/ce ...
- linux虚拟机安装oracle全过程(一)
起源:为方便系统迁移,导致的不必要的重装软件.故在虚拟机中搭建oracle数据库以及weblogic服务器(所有使用软件及资源链接附在结尾处) 1.安装虚拟机: 1.1.安装vmware 11破解版. ...