day03运算符和if条件语句

2019-03-06  本文已影响0人  我去买个橘子o

1. 运算符

1.1 比较运算符

比较运算符有>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)、!=(不等于)

print(100 > 10)      # True 
print(100 > 1000)    # False
print(100 < 10)      # False
print(100 < 1000)    # True
print(100 == 100)    # True
print(100 == 10)     # False
print(100 != 100)    # False
print(100 != 10)     # True 
print(100 >= 100)    # True
print(100 >= 1000)   # False
print(10 <= 10)      # True

1.2 逻辑运算符

逻辑运算符:and(与)、or(或)、not(非),所有的逻辑运算符的结果都是布尔值,操作对象也是布尔值

True and True ==  True
True and False == False
False and True == False
False and Fasle == False
True or True  == True
True or False == True
False or True == True
False or False  == False
not True  == False
not False == True

1.3 复合赋值运算符

**+=, -=, *=, /=, //=, %=, =
所有的赋值运算符左边要求都必须是变量;复合赋值运算符左边要求除了是变
量以外,这个变量还必须已经赋过值。
赋值过程: 将原变量中的数据取出来,和后边的值相运算,然后将最新的结果重新赋给变量

num2 = 10
num2 += 2       # num2 = num2 + 2        
print(num2)     #num2 = 12

num2 = 10
num2 *= 2        #num2 = num2*2
print(num2)      #num2 = 20

num2 /= 4      #num2 = num/4
print(num2)    #num2 = 0.5

1.4 运算符的优先级

数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
先算优先级高的,再算优先级低的。如果有括号,先算括号里面的

num = 10
num += 12 * 3    # num += 36 
print(num)

注意: 不要让数字参与逻辑运算, 没有任何意义

print(10 and 3)      #没有意义
print(10 or 30)      #没有意义

2. python中的数据类型

2.1 int(整型)

整型包含了数字中所有的整数,包括正整数、负整数和0

print(10, -100, +200, 0)

2.2 float(浮点型)

浮点型包含数字中所有的小数;例如:0.0, 0.12, -3.14
支持科学计数法:2e3

print(0.0, 0.12, -3.14)
print(2e3)
print(2e-3)

补充: 可以利用**来进行开方运算

print(3**2)
print(9**(1/2))     #9开平方
print(8**(1/3))     #8开3次方

2.3 bool(布尔型)

布尔只有True和False两个值;实质,当布尔参与数字运算的时候True就是1,False就是0

print(True == 1)
print(False == 0)

2.4 complex(复数)

复数是指包含实部和虚部的这种数: 10+2j, 19j, -10j

print(10+2j)
print((10+2j)*(11-8j))

2.5 type()获取数据类型

用法: type(数据) 获取括号中执行的数据对应的类型

type1 = type(10+2j)    
print(type1)                #complex
print(type(True))        #bool
num = 3e4
print(type(num))        #float

2.6 isinstance()判断数据类型

isinstance(数据, 类型) 判断指定的数据是否是指定的类型,结果是布尔值

result = isinstance(10, float)  
print(result)   #False

2.7 数据类型转换

类型名(数据) 将指定的数据转换成指定的类型

num = 12.5
new_num = int(num)
print(new_num)

print(float(100))

print(float(True))

print(bool(0.0))

**布尔转整型或者浮点型: **

print(int(True))    #1
print(int(False))    #0

整型或浮点型转布尔型:

print(bool(22))    #True
print(bool(-2))    #True
print(bool(0))    #False

3. 条件语句

3.1 分支结构:只有if语句(条件语句)

语法:
if 条件语句:
语句块1
else:
语句块2

注意:

age = 18
if age>=18:
    print('成年')

3.2 if-else结构

语法:
if 条件语句:
语句块1
else:
语句块2

执行过程:判断条件语句是否为True(如果不是布尔值就看转换为布尔值后是否为True),如果为True就执行语句块1,否则执行语句块2

应用:满足条件执行某个操作,不步满足条件执行另外的操作,就使用if-else结构

age = 18
if age>=18:
    print('成年')
else:
    print('未成年')

3.3 if-elif-else结构

语法:
if 条件语句1:
语句块1
elif 条件语句2:
语句块2
elif 条件语句3:
语句块3
else:
语句块4

说明:在if-elis-else结构中,elif可以根据情况有多个,else根据情况可以省略

执行过程:先判断条件语句1是否成立,成立执行语句块1,不成立判断条件语句2是否成立,成立执行语句块2,然后同上继续

score = 90
if score>=90:
    print("优秀")
elif 80<=score<90:
    print("良好")
elif 70<=score<80:
    print("中等")
elif 60<=score<70:
    print("及格")
else:
    print(" 不及格")

3.4 if嵌套

在if、elif、else对应的语句块中,可以根据情况写一个或多个其他的if语句结构

#判断一个数是否是偶数,如果是打印'偶数'否则打印'奇数',如果这个数能被4整除,打印'4的倍数
num = 10
if num%2 == 0:
    print("偶数")
    if num%4 == 0:
        print("4的倍数")
else:
    print("奇数")
上一篇下一篇

猜你喜欢

热点阅读