1. 比较运算符
假设x=10, y=20
运算符
中文名
描述
==
等于等于
比较x,y是否相等
!=
不等于
比较x,y是否不相等
>
大于
x>y,比较x是否大于y
<
小于
x
>=
大于等于
x>=y,比较x是否大于等于y
<=
小于等于
x<=y,比较x是否小于等于y
2. 算数运算符
假设x和y两个数
运算符
中文名
描述
+
加
x,y相加
-
减
x, y相减
*
乘
x, y相乘
/
除
x, y相除,y不能为0
**
求幂
求x的y次方
//
取整
返回余数
%
取模
返回整数,不使用四舍五入
3. 赋值运算符
假设x,y两个数
运算符
中文名
描述
=
等于
变量赋值运算符
+=
加等于
x+=y;即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的y次方赋值给x
//=
取整等于
x//=y;即x和y相除后的商赋值给x,不保留整数
4. 位于运算符
说明:按位运算符是通过其数的二进制进行计算
运算符
中文名
描述
&
按位与运算符
参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
|
按位或运算符
只要对应的二个二进位有一个为1时,结果位就为1。
^
按位异或运算符
当两对应的二进位相异时,结果为1
~
按位取反运算符
对数据的每个二进制位取反,即把1变为0,把0变为1。
<<
左移运算符
运算数的各二进位全部左移若干位,由"<
>>
右移运算符
把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数
实例演练:
x = 40 #二进制为:101000
y = 27 #二进制为:011011
z = 0
z = x & y # 8 == 1000
print("&--z的值为", z)
z = x | y # 59 == 111011
print("|--z的值为", z)
z = x ^ y # 51 == 110011
print("^--z的值为", z)
z = ~ x # -41 == 101001
print("~--z的值为", z)
z = x >> 3 # 5 == 101
print(">>--z的值为", z)
z = x << 3 # 320 == 101000000
print("<
输出:
&--z的值为 8
|--z的值为 59
^--z的值为 51
~--z的值为 -41
>>--z的值为 5
<
5. 逻辑运算符
运算符
中文名
描述
and
逻辑与运算符
x和y一个为假,就全部为假,必须全部为真,才为真
or
逻辑或运算符
x和y一个为真就为真,全部为假才为假
not
逻辑非运算符
去表达式的反义,真为假,假为真
实例演练:
x = 10
y = 20
print(x and y)
print(x or y)
print(not(x and y))
输出:
20
10
False
6. 成员运算符
运算符
描述
in
如果在指定的序列中找到值返回 True,否则返回 False。
not in
如果在指定的序列中没有找到值返回 True,否则返回 False。
实例演练
x = 2
y = "2"
z = [1,2,3]
print(x in z)
print(y not in z)
输出:
True
True
7. 身份运算符
id(object): 查看变量在内存中的地址,根据地址判断是不是同一对象
运算符
描述
is
is 是判断两个标识符是不是引用自一个对象
is not
is not 是判断两个标识符是不是引用自不同对象
实例演练
x = 1
y = 1
z = 2
print(id(x))
print(id(y))
print(id(z))
print(x is y)
print(x is not z)
print(y is z)
输出:
1467711600
1467711600
1467711632
True
True
False
8. 运算符优先级
说明: 优先级降序排列
运算符
描述
**
指数 (最高优先级)
~ + -
按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //
乘,除,求余数和取整除
+ -
加法减法
>> <<
右移,左移运算符
&
位 'AND'
^ |
位运算符
<= < > >=
比较运算符
== !=
等于运算符
= %= /= //= -= += *= **=
赋值运算符
is is not
身份运算符
in not in
成员运算符
not and or
逻辑运算符
9. 输出输入
print函数(输出):
向屏幕打印信息,多用于调试
可接受多个对象,用逗号隔开,逗号输出为空格
input函数(输入):
用于接收外部输入的内容,最终值为字符串
a = input("请输入:")
print(a)
输出:
请输入:123
123
10. 数字类型转换及常用数学方法
数学方法
内置
方法名
描述
int()
用于将字符串整数、小数等转为整数
float()
用于将字符串整数转为字符串小数、整数转为小数
max(seq)
返回序列中的最大值
min(seq)
返回序列中的最小值
pow(x,y)
返回x的y次方
abs(x)
返回 x 的绝对值
round(x,y)
保留x的y位小数,五舍六入
数学模块: 调用了math模块
方法名
描述
ceil(x)
返回≧ x 的最小整数
floor(x)
返回≦ x 的最大整数
sqrt(x)
给x开方
modf(x)
返回 x 的小数部份与整数部份
随机值模块: 调用了random模块
方法名
描述
randint(x,y)
产生x到y之间的一个整数型随机数
choice(seq)
从序列中随机选取一个元素,seq可以为list、tuple、string等
randrange(x,y,z)
生成从x到y的间隔为z的随机整数
uniform(x,y)
产生 x 到 y之间的随机浮点数,区间可以不是整数
shuffle(seq)
将序列打乱,seq可以为list、tuple、string等
11. 表达式
if语句:主要用于对表达式的真假判断,来执行对应的语句
当表达式为True时,则执行语句,False,则跳过
# 格式
if 表达式:
语句
if-elif-elif语句:有多个表达式,用于多种情况判断,哪个符合就执行哪个对应的语句
从上往下依次判断,有一个符合要求的就会执行对应的语句,不会继续往下判断
# 格式
if 表达式1:
语句1
elif 表达式2:
语句2
elif 表达式3:
语句3
......
if-elif-else语句:有多个表达式,当所有表达式都不为True时,即执行else对应的语句
从上往下依次判断,若if和elif其中一个为true,则执行对应的语句,不会继续往下判断,若都为False,则执行else对应的语句
# 格式
if 表达式1:
语句1
elif 表达式2:
语句2
else
语句3