python运算符与表达式
我听过 人气:01、算数运算符
+、-、*、/、//、%(取余)、**(幂)
注意:
1>除法运算中除数不为0,/:结果为浮点数,//:结果为整数
2>在算数操作符中使用%求余,结果只与除数(第二个操作数)的正负有关
2、赋值运算符:=
赋值运算符与四则运算符组合:实现把赋值运算符左右两侧的内容进行相应的四则运算后,把结果赋值给变量
实例:
# -*- coding:utf-8 -*-
# version:python3.7
a = 2 a += 1 print(a) 执行结果: 3
3、比较(关系)运算符
用于对变量或表达式的结果进行大小、真假等比较。比较的结果为真,则返回True,为假,则返回False。通常用在条件语句中作为判断的依据。
实例:判断python和english的成绩是否合格 # -*- coding:utf-8 -*- # version:python3.7 python = float(input("please enter your python score:")) english = float(input("please enter your english score:")) if python >= 60: print("Your python score is qualified.") if python < 60: print("Your python score is disqualified.") if english >= 60: print("Your english score is qualified.") if english < 60: print("Your english score is disqualified.") 执行结果: please enter your python score:56 please enter your english score:72 Your python score is disqualified. Your english score is qualified.
4、逻辑运算符
对布尔值(真和假)进行逻辑与、逻辑或、逻辑非运算
1>逻辑与(and):一假则假
2>逻辑或(or):一真则真
3>逻辑非(not):条件为真,结果为假;条件为假,结果为真
实例: # -*- coding:utf-8 -*- # version:python3.7 a = float(input("请输入a的值:")) b = float(input("请输入b的值:")) if a > 60 and b > 60: print("a和b都大于60") else: print("a和b不都大于60") 执行结果: 请输入a的值:56 请输入b的值:66 a和b不都大于60
5、位运算符
把数据看成二进制数进行计算
1>位与运算(&):两个操作数按二进制数表示,对应位都为1,结果位才为1
2>位或运算(|):两个操作数按二进制数表示,对应位都为0,结果位才为0
3>位异或运算(^):两个操作数按二进制数表示,对应位同为1或同为0,结果为0,否则为1
位异或实例1:两个数互换值 # -*- coding:utf-8 -*- # version:python3.7 a = int(input("请输入a的值:")) b = int(input("请输入b的值:")) a = a ^ b b = a ^ b a = a ^ b print("a的值为:",a) print("b的值为:",b) 执行结果: 请输入a的值:5 请输入b的值:6 a的值为: 6 b的值为: 5
位异或实例2:简单加密 # -*- coding:utf-8 -*- # version:python3.7 pwd = int(input("请输入密码:")) key = int(input("请输入秘钥:")) password = pwd ^ key print("加密后的结果:",password) print("解密后的结果:",password ^ key) 执行结果: 请输入密码:123456 请输入秘钥:55 加密后的结果: 123511 解密后的结果: 123456
4>位取反运算(~):把二进制操作数,对应位1变为0,0变为1
5>左移位运算符(<<):把二进制操作数,向左移动相应位数,左边最高位溢出时被丢弃,右边空位用0补齐(左移位相当于乘以2的n次幂)
6>右移位运算符(>>):把二进制操作数,向右移动相应位数,右边溢出位被丢弃,左边最高位如果是0补0,是1补1(右移位相当于除以2的n次幂)
实例:左移一位相当于乘以2的n次幂,右移一位相当于除以2的n次幂 # -*- coding:utf-8 -*- # version:python3.7 number = 32 print("左移一位:",number << 1) print("右移一位:",number >> 1) 执行结果: 左移一位: 64 右移一位: 16
6、运算符的优先级
按运算符优先级从高到低运算,同一级别从左到右顺序执行,可以使用()改变优先级
7、条件表达式
基本语法:结果1 if 表达式 else 结果2 #结果1为表达式结果为True的值,结果2位表达式结果为False的值
语法演变:variable = [结果1] if [表达式] else [结果2]
实例1:输出a、b中的较大数 # -*- coding:utf-8 -*- # version:python3.7 a = float(input("请输入a的值:")) b = float(input("请输入b的值:")) r = a if a > b else b print("输出较大数:",r) 执行结果: 请输入a的值:4.5 请输入b的值:6.88 输出较大数: 6.88
实例2:输出a的绝对值 # -*- coding:utf-8 -*- # version:python3.7 a = float(input("请输入a的值:")) b = a if a > 0 else -a print("a的绝对值为:",b) 执行结果: 请输入a的值:-7.4 a的绝对值为: 7.4
加载全部内容