这里介绍一下Python里面的运算符和常用函数,其实不需要全部记住,到时候用到的时候查就行了,跟以前学过的C/CPP有一些是一样的,也有一些更加方便的新增运算符,当然有一部分的表示方法不太一样,这些到时候在实战的时候查就好了。
Python里面的运算符分为:普通运算符和逻辑运算符
前者包括数值运算符、比较运算符、赋值运算符和位运算符。
后者包括条件运算符、成员运算符和身份运算符。
数值运算符就是简单的加(+)减(-)乘(*)除(/)取余(%)幂(**),比较运算符就是大于(>)小于(<)大于等于(>=)小于等于(<=)等于(==)不等于(!=),赋值就是=系列,位运算符就是与(&)或(|)非(~)异或(^)左移(<<)右移(>>);条件就是和(and)或(or),成员就是在(in)不在(not in),身份就是是(is)不是(not)。
常用函数就是一般Python内置且我们会使用的函数,包括一些基本的运算函数和随机数函数等等,将在代码块最后的注释进行说明。
——————————————————————————————————————————— 基于菜鸟教程:Python3 运算符 | 菜鸟教程 的代码如下,可直接运行查看结果:
#Python普通运算符
a = 21
b = 10
c = 0
c = a + b
print ("1 - c 的值为:", c)
c = a - b
print ("2 - c 的值为:", c)
c = a * b
print ("3 - c 的值为:", c)
c = a / b
print ("4 - c 的值为:", c)
c = a % b
print ("5 - c 的值为:", c)
# 修改变量 a 、b 、c
a = 2
b = 3
c = a**b
print ("6 - c 的值为:", c)
a = 10
b = 5
c = a//b
print ("7 - c 的值为:", c)
#Python比较运算符
a = 21
b = 10
c = 0
if ( a == b ):
print ("1 - a 等于 b")
else:
print ("1 - a 不等于 b")
if ( a != b ):
print ("2 - a 不等于 b")
else:
print ("2 - a 等于 b")
if ( a < b ):
print ("3 - a 小于 b")
else:
print ("3 - a 大于等于 b")
if ( a > b ):
print ("4 - a 大于 b")
else:
print ("4 - a 小于等于 b")
# 修改变量 a 和 b 的值
a = 5
b = 20
if ( a <= b ):
print ("5 - a 小于等于 b")
else:
print ("5 - a 大于 b")
if ( b >= a ):
print ("6 - b 大于等于 a")
else:
print ("6 - b 小于 a")
#Python赋值运算符
a = 21
b = 10
c = 0
c = a + b
print ("1 - c 的值为:", c)
c += a
print ("2 - c 的值为:", c)
c *= a
print ("3 - c 的值为:", c)
c /= a
print ("4 - c 的值为:", c)
c = 2
c %= a
print ("5 - c 的值为:", c)
c **= a
print ("6 - c 的值为:", c)
c //= a
print ("7 - c 的值为:", c)
#Python位运算符
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b # 12 = 0000 1100
print ("1 - c 的值为:", c)
c = a | b # 61 = 0011 1101
print ("2 - c 的值为:", c)
c = a ^ b # 49 = 0011 0001
print ("3 - c 的值为:", c)
c = ~a # -61 = 1100 0011
print ("4 - c 的值为:", c)
c = a << 2 # 240 = 1111 0000
print ("5 - c 的值为:", c)
c = a >> 2 # 15 = 0000 1111
print ("6 - c 的值为:", c)
#Python逻辑运算符
#跟其他都不一样
#用and代表&& 用or代表||
from msilib import AMD64
a = 10
b = 20
if ( a and b ):
print ("1 - 变量 a 和 b 都为 true")
else:
print ("1 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
print ("2 - 变量 a 和 b 都不为 true")
# 修改变量 a 的值
a = 0
if ( a and b ):
print ("3 - 变量 a 和 b 都为 true")
else:
print ("3 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
print ("4 - 变量 a 和 b 都不为 true")
if not( a and b ):
print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")
else:
print ("5 - 变量 a 和 b 都为 true")
a=5
b=4
if a<b and a!=0:
print("right")
else:
print("wrong")
#Python成员运算符
#in 如果在指定的序列中找到值返回 True,否则返回 False。
#not in 如果在指定的序列中没有找到值返回 True,否则返回 False。
a = 10
b = 20
list = [1, 2, 3, 4, 5 ]
if ( a in list ):
print ("1 - 变量 a 在给定的列表中 list 中")
else:
print ("1 - 变量 a 不在给定的列表中 list 中")
if ( b not in list ):
print ("2 - 变量 b 不在给定的列表中 list 中")
else:
print ("2 - 变量 b 在给定的列表中 list 中")
# 修改变量 a 的值
a = 2
if ( a in list ):
print ("3 - 变量 a 在给定的列表中 list 中")
else:
print ("3 - 变量 a 不在给定的列表中 list 中")
#Python身份运算符
#身份运算符用于比较两个对象的存储单元
#is is 是判断两个标识符是不是引用自一个对象
#is not is not 是判断两个标识符是不是引用自不同对象
#id() 函数用于获取对象内存地址。
a = 20
b = 20
if ( a is b ):
print ("1 - a 和 b 有相同的标识")
else:
print ("1 - a 和 b 没有相同的标识")
if ( id(a) == id(b) ):
print ("2 - a 和 b 有相同的标识")
else:
print ("2 - a 和 b 没有相同的标识")
# 修改变量 b 的值
b = 30
if ( a is b ):
print ("3 - a 和 b 有相同的标识")
else:
print ("3 - a 和 b 没有相同的标识")
if ( a is not b ):
print ("4 - a 和 b 没有相同的标识")
else:
print ("4 - a 和 b 有相同的标识")
#is 与 == 区别:
#is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
a = [1, 2, 3]
b = a
print(b is a)
print(b == a)
b = a[:]
print(b is a)
print(b == a)
#** 指数 (最高优先级)
# ~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
# * / % // 乘,除,求余数和取整除
# + - 加法减法
# >> << 右移,左移运算符
# & 位 'AND'
# ^ | 位运算符
# <= < > >= 比较运算符
# == != 等于运算符
# = %= /= //= -= += *= **= 赋值运算符
# is is not 身份运算符
# in not in 成员运算符
# not and or 逻辑运算符
#Python数字函数
#基本运算函数
# abs(x) 返回数字的绝对值,如abs(-10) 返回 10
# ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
# cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃,使用 (x>y)-(x<y) 替换。
# exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
# fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
# floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
# log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
# log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
# max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
# min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
# modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
# pow(x, y) x**y 运算后的值。
# round(x [,n]) 返回浮点数 x 的四舍五入值,如给出 n 值,则代表舍入到小数点后的位数。
# 其实准确的说是保留值将保留到离上一位更近的一端。
# sqrt(x) 返回数字x的平方根。
#随机数函数
# choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
# randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
# random() 随机生成下一个实数,它在[0,1)范围内。
# seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
# shuffle(lst) 将序列的所有元素随机排序
# uniform(x, y) 随机生成下一个实数,它在[x,y]范围内。
#三角函数
# acos(x) 返回x的反余弦弧度值。
# asin(x) 返回x的反正弦弧度值。
# atan(x) 返回x的反正切弧度值。
# atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值。
# cos(x) 返回x的弧度的余弦值。
# hypot(x, y) 返回欧几里德范数 sqrt(x*x + y*y)。
# sin(x) 返回的x弧度的正弦值。
# tan(x) 返回x弧度的正切值。
# degrees(x) 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0
# radians(x) 将角度转换为弧度
#数学常量
# pi 数学常量 pi(圆周率,一般以π来表示)
# e 数学常量 e,e即自然常数(自然常数)。