其他分享
首页 > 其他分享> > Cp2_3_2.py

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