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 ...
随机推荐
- 牛客小白月赛18——Forsaken的三维数点
这个是一个简单题,不过因为想到比标程时间复杂度更低的方法就尝试了一下. 思路:虽然加点是三维数点,但是我们要求的是半径的大小,这样的话,就可以转变为一维的问题. 标程的解法是,用树状数组维护,然后二分 ...
- [转]分析zookeeper能做什么
Zookeeper是hadoop的一个子项目,虽然源自hadoop,但是我发现zookeeper脱离hadoop的范畴开发分布式框架的运用越来越多.今天我想谈谈zookeeper,本文不谈如何使用zo ...
- jquery_ajax 异步提交
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【One by one系列】一步步学习TypeScript
TypeScript Quick Start 1.TypeScript是什么? TypeScript是ES6的超集. TS>ES7>ES6>ES5 Vue3.0已经宣布要支持ts,至 ...
- DDL&DML
SQL语言的DDL和DML DDL:数据定义语言它是用来定义 管理数据对象(数据库和数据表)的. create(创建),alter(修改),drop(删除) 一.创建数据库create datebas ...
- 安卓和iOS统一下载页面
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JavaScript—瀑布流
现在网页中需要翻页的列表,好多都已经改为瀑布流了.所以这个思路还是特别重要的 HTML Css 页面 因为每个图片的高度不一样所以她的 top 和left 我们待会通过JS计算 动态生成 js部分 思 ...
- Hadoop的FlieSystem类的使用
1.使用FileSystem类需要导入jar包 解压hadoop-2.7.7.tar.gz 复制如下三个jar包和lib下所有jar包到项目文件下的lib文件 2.查看文件信息 @Test publi ...
- CSS3新属性:在网站中使用访客电脑里没有安装的字体
CSS的font-family属性使网页可以使用客户电脑里的字体,从而得到多姿多彩的WEB页面,但当客户端没有你想要使用的字体时怎么办呢?我们总不能让每个访问者都去安装一个字体吧?事实上,这是可以的! ...
- 操作实践,git本地分支执行rebase,让主干分支记录更简洁
声明:迁移自本人CSDN博客https://blog.csdn.net/u013365635 我们平时在写代码的时候,难免会修修改改,如果团队中每个人的代码提交记录都包含着一堆中间过程,是很不利于团队 ...