第一章 Python基础学习之运算符
文章目录
一、算数运算符
+ 加 两个对象相加 a + b 输出结果 30
- 减 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 乘 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 b / a 输出结果 2
// 取整除 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
% 取余 返回除法的余数 b % a 输出结果 0 ***
** 指数 a**b 为10的20次方, 输出结果 100000000000000000000
num1 = 5
num2 = 3
+ 操作
result = num1 + num2
print("结果为:", result)
- 操作
result = num1 - num2
print("结果为:", result)
* 操作
result = num1 * num2
print("结果为:", result)
/ 操作
result = num1 / num2 # 两数字相除返回的float类型
print("结果为:", result, type(result))
// 操作 , 求整除也就是求商
result = num1 // num2
print("结果为:", result, type(result))
% 操作 , 求余数
result = num1 % num2
print("结果为:", result, type(result))
** 操作 , 求指数
result = num1 ** num2
print("结果为:", result, type(result))
二、赋值运算符
= ,把等号右边的代码执行完,把结果赋值给等号左边的变量
num = 1 * 3 + 2
print(num)
name = "李四"
print(name)
可以给多个变量赋值
age, height, sex = 20, 1.75, "男" # 利用拆包,给多个变量赋值
print(age, height, sex)
扩展: 支持连续赋值
num3 = num2 = num1 = 3
print(num3, num2, num1)
三、复合赋值运算符
+= 加法赋值运算符 c += a 等效于 c = c + a **
-= 减法赋值运算符 c -= a 等效于 c = c - a **
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
num1 = 3
num2 = 2
+= 操作
num1 += num2 # => num1 = num1 + num2
print("num1:", num1)
-= 操作
num1 -= num2 # => num1 = num1 - num2
print("num1:", num1)
*= 操作
num1 *= num2 # => num1 = num1 * num2
print("num1:", num1)
/= 操作
num1 /= num2 # => num1 = num1 / num2
print("num1:", num1)
%= 操作
num1 %= num2 # => num1 = num1 % num2
print("num1:", num1)
**= 操作
num1 **= num2 # => num1 = num1 ** num2
print("num1:", num1)
//= 操作
num1 = 2
num2 = 3
num1 //= num2 # => num1 = num1 // num2
print("num1:", num1)
四、复合赋值运算符
把字符串转成int类型的操作
num1 = 3
str1 = '1'
print("str1:", str1, type(str1))
#把str1这个变量转成int类型
num2 = int(str1)
print("num2:", num2, type(num2))
result = num1 + num2
print(result)
把int类型的数据转成字符串类型
num1 = 3
str2 = "A"
# 把num1 转成 字符串类型
str1 = str(num1)
print("str1:", str1, type(str1))
# 字符串的拼接操作
result = str1 + str2
print(result, type(result))
把字符串转成float类型
my_str = "3.14"
new_value = float(my_str)
print(new_value, type(new_value))
把float类型的数据转成字符串
pi = 3.14
new_str = str(pi)
print(new_str, type(new_str))
eval函数的使用,表示获取字符串中包裹的内容
my_str = "567"
result = eval(my_str)
print(result, type(result))
my_str = "5.67"
result = eval(my_str)
print(result, type(result))
my_str = "[1, 3, 5]" [1, 3, 5]
result = eval(my_str)
print(result, type(result))
五、if语句的使用
#input函数接收数据后返回的字符串
age = int(input("请输入您的年龄:")) # 把字符串数据转成int
print(age, type(age))
print("if语句开始判断了....")
if age >= 18:
# 当条件满足,会执行if语句里面的代码
print("已成年!")
print("if语句判断结束了....")
user_name = input("请输入您的用户名:")
password = input("请输入您的密码:")
if user_name == "xiaoguo" and password == "123456":
print("登录成功")
else:
print("用户名或者密码错误")
六、比较运算符
比较运算符
== 检查两个操作数的值是否相等,如果是则条件变为真。 如a=3,b=3,则(a == b) 为 True
!= 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 如a=1,b=3,则(a != b) 为 True
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a > b) 为 True
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a < b) 为 False
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a >= b) 为 True
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a <= b) 为 True
学习比较运算符的目的: 比较运算符经常结合if语句来使用,判断条件是否满足的
num1 = 3
num2 = 2
比较两个数字是否相等
result = num1 == num2
print(result, type(result))
通过代码的演示:
可以得知,比较运算符返回的类型是bool类型,False 表示不成立, True表示成立
if result:
print("条件成立")
#当使用if语句判断的结果是True,if语句里面的代码会执行,
#如果是False则if语句里面的代码不会执行
if num1 != num2:
print("两数字不相等")
if 5 > 3:
print("5 > 3")
if 6 < 10:
print("6 < 10")
if 10 >= 10:
print("10 >= 10")
if 10 <= 10:
print("10 <= 10")
七、逻辑运算符
逻辑运算符:
- and 表示左右两边的条件是并且的关系,两边条件都成立if语句才会执行
- or 表示左右两边的条件是或者的关系,两边条件有一个成立if语句就会执行
- not 表示取反,对你判断条件进行取反操作
name = "张三"
age = 18
# and 表示左右两边条件都成立if语句就会执行
if name == "张三" and age == 18:
print("找到你!")
address = "北京"
# or 表示左右两边的条件是或者的关系,有其中一个成立if语句就会执行
if name == "李四" or address == "北京1":
print("哈哈,你跑不了了!")
if not age == 18:
print("条件满足")
result = not age == 18
print(result)
result = not False
print(result)
# not 对True取反变成False, 对False变成True。
八、三目运算符
学习三目运算的目的:对if-else语句的代码进行简化,可以一行代码来搞定
# 需求:获取两个变量中的最大值
num1 = 3
num2 = 5
# if num1 > num2:
# print("最大值为:", num1)
# else:
# print("最大值为:", num2)
# 使用三目运算对以上代码进行简化
# 三目运算的执行流程,先判断if语句的条件是否满足,如果满足则执行if语句左边的代码,否则执行else语句右边的代码
result = num1 if num1 > num2 else num2
print("最大值为:", result)
# 提示:Django阶段会使用下面的方式的方式
print("num1的数据大,值为:", num1) if num1 > num2 else print("num2的数据大,值为:", num2)
print('ok') if 1 == 1 and 2 ==2 else print("error")
num1 = 1
num2 = 2
result = num1 if num1 > num2 else num2
print("最大值为:", result)