operator和if结构
Posted lijianming180
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了operator和if结构相关的知识,希望对你有一定的参考价值。
1.比较运算符:>,<,==,!=,>=,<=
注意:所有比较运算符的结果都是布尔值
举例:1
2
3
4
5
6
7
8
9print(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(‘年龄:‘) |
以上是关于operator和if结构的主要内容,如果未能解决你的问题,请参考以下文章
Operator '||' cannot be applied to operands of type 'bool?' and 'bool?'(代码片段
Kotlin学习之旅解决错误:kotlin.NotImplementedError: An operation is not implemented: Not yet implemented(代码片段