Cp2_3_2.py
作者:互联网
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File : Cp2_3_2.py
# @Author: WRH
# @Date : 2021/2/2
# @Edition:Python3.8.6
# 运算符
# 1.算术运算符
'''
# 以下各模块运算符优先级递增,模块内运算符优先级相同
模块一:
+ 加法:两个对象相加,或者一元加 x + y
- 减法:两个对象相减,或得到负数 x - y
模块二:
* 乘法:两个操作数相乘,或是返回一个被重复若干次的字符串 x * y
/ 浮点除法: x / y
// 取整除:返回商 x // y(x/y 的商)
% 取模:返回余数 x % y(x/y 的余数)
模块三:
单目+,单目-
单目+:求一个数的正数 +x
单目-:求一个数的负数 -x
模块四:
** 幂:返回 x 的 y 次幂 x ** y
'''
print(5/2)
print(5//2)
print(5%2)
# 2.赋值运算符
# 单变量赋值运算符 =
'''
# 注意与关系运算符==进行区分
# 赋值运算符左边只能是变量,不能是常量或表达式,比如5=x,y+5=z都是不合法的。变量的命名规则回顾第一节课内容
'''
name = '张三'
age = 18
# 序列赋值
x,y = 1,10
print(x,y)
# 多目标赋值
name, age, score='张三', 18, 100
print(name, age, score)
# 复合赋值运算符:算术运算符和赋值运算符的组合
'''
# 算术复合赋值运算符
运算符 示例 等价于
+= x += 5 x = x + 5
-= x -= 5 x = x - 5
*= x *= 5 x = x * 5
/= x /= 5 x = x / 5
%= x %= 5 x = x % 5
//= x //= 5 x = x // 5
**= x **= 5 x = x ** 5
'''
x = 3
x += 1
print(x)
# 3.关系运算符(比较运算符):对两个数值类型或者字符串类型数据进行大小比较,返回布尔值(True或False)
'''
> 大于:如果左操作数大于右操作数,返回值则为 True x > y
< 小于:如果左操作数小于右操作数,返回值则为 True x < y
== 等于:如果两个操作数相等,返回值则为 True x == y
!= 不等于:如果两个操作数不相等,返回值则为 True x != y
>= 大于等于:如果左操作数大于或等于右操作数,返回值则为 True x >= y
<= 小于等于:如果左操作数小于或等于右操作数,返回值则为 True x <= y
'''
print(1>2)
# 4.逻辑运算符
'''
and:与,前后两个操作数必须都是 True 才返回 True;否则返回 False。
or:或,只要两个操作数中有一个是 True,就可以运回 True;否则返回 False;
not:非,只需要一个操作数,如果操作数为 True,则返回 False;如果操作数为 False,则返回 True。
'''
print(1==1 and 1>0)
# 5.身份运算符
'''
身份运算符用于检查两个值(或变量)内存地址是否位于存储器的同一部分。
注意: 两个变量相等,并不意味着它们也相同。
运算符 含义 示例
is 如果操作数相同,则为 True(引用同一个对象) x is True
is not 如果操作数不相同,则为 True(引用不同的对象) x is not True
'''
x = [1, 2, 3]
y = [1, 2, 3]
print(x==y)
print(x is y)
print(id(x),id(y)) # 查看变量内存地址的函数
'''
== 比较运算符,比较的是两个对象的值是否相等,从字面上看,这两个列表的值是完全相等的
is 是身份运算符,它比较的是两个对象的内存地址是否相同,如果内存地址相同,那么他们就是同一个对象。
'''
# 6.成员运算符
'''
运算符 含义 示例
in 如果在指定序列中找到值/变量,返回 True;否则返回 False 5 in x
not in 如果在指定序列中没有找到值/变量,返回 True;否则返回 False 5 not in x
'''
x = 5
y = 10
list=[1,2,3,4,5]
print(x in list)
# 6.位运算符:按位运算符是把数字看作二进制来进行计算的
'''
运算符 含义 示例
& x & y 按位与(AND):参与运算的两个值的两个相应位都为1,则该位的结果为1;否则为0
| x | y 按位或(OR):参与运算的两个值的两个相应位有一个为1,则该位的结果为1;否则为0
~ ~x 按位翻转/取反(NOT):对数据的每个二进制位取反,即把 1 变为 0 ,把 0 变为 1
^ x ^ y 按位异或(XOR):当两个对应的二进制位相异时,结果为1
>> x >> y 按位右移 :运算数的各个二进制位全部右移y位
<< x << y 按位左移:运算数的各个二进制位全部左移y位,高位丢弃,低位补0
'''
x = 60 # 二进制数为0011 1100
y = 13 # 二进制数为0000 1101
print(x & y) # 按照运算规则x & y输出的二进制数为0000 1100,对应十进制数为12
# 十进制转二进制函数 print(bin(12))
# 二进制转十进制函数 print(int('00001100',2))
# 位复合赋值运算符
'''
运算符 含义 等价于
&= x &= y x = x & y
|= x |= y x = x | y
^= x ^= y x = x ^ y
>>= x >>= y x = x >> y
<<= x <<= y x = x << y
'''
x = 5 # 5的二进制数为00000101
x <<= 2 # x = x << 2所有二进制数左移两位,高位丢弃,低位补0,变成00010100
print(x) # 输出二进制结果为00010100,对应十进制数为20
print(int('00010100', 2)) # 验证二进制数00010100转换为十进制数为20
# 运算符的优先级,以下依次由低到高排序
'''
# 逻辑运算符
or 布尔“或”
and 布尔“与”
not 布尔“非”
# 赋值和复合赋值运算符
=,+=,-=,*=,/=,//=,%=,**=
# 身份运算符
is,is not 同一性测试
# 关系运算符(比较运算符)
<,<=,>,>=,!=,== 比较
# 位运算符
| 按位或 #
^ 按位异或
& 按位与
<<,>> 移位
# 算术运算符
+,- 加法与减法
*,/,% 乘法、除法与取余
+x,-x 单目+,单目-
** 指数
[] 索引
'''
标签:返回,操作数,py,运算符,按位,print,Cp2,True 来源: https://blog.csdn.net/qianlixiushi/article/details/113703559