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(非),所有的逻辑运算符的结果都是布尔值,操作对象也是布尔值
- and(与)运算规则:两个都为True,结果才是True; 只要有一个是False,结果就是False。(相当于生活中的并且)
True and True == True
True and False == False
False and True == False
False and Fasle == False
- or(或)运算规则:两个都为False,结果才是False; 只要有一个是True,结果就是True。(相当于生活中的或者)
True or True == True
True or False == True
False or True == True
False or False == False
- not(非)运算规则:True变False, False变True
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
注意:
if是固定写法,是关键字;
条件语句可以是一个值, 一个变量, 一个运算表达式等,不能是赋值语句;
语句块是一行或者多行代码执行过程:先判断条件语句的结果是否为True(如果不是布尔值就看转换为布尔值后是否为True),如果为True就执行语句块对应的代码
应用:某个操作或者某段代码是在满足某个条件下才会执行,不满足条件就不执行的时候,就可以使用if语句
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("奇数")