算术运算符
a = 20
b = 10
运算符 | 说明 | 示例 |
---|---|---|
- | 负号,取原数的相反数 | a = 10 print(-a) #-10 |
+ - * / | 加减乘除,同数学上一样 | a + b = 30 a - b = 10 a * b = 200 a / b = 2 |
% | 模运算,即求a整除以b的余数 | a % 10 = 0 |
// | 整除 | a // b = 2 |
** | 对运算符进行指数(幂)计算 | a ** b 表示20的10次方 |
模运算说明
模运算的符号取决于第二个操作数(右操作数)
模运算的计算公式:r = a % b = a - n *b,其中n是小于a/b的最大整数
整除(//)运算如果有一个操作数是浮点数,结果就是浮点数
用途:判断奇偶,判断是否能够整除,最大公约数,水仙花数
赋值运算符
a = 5;b = 10;c = 20
运算符 | 说明 | 示例 |
---|---|---|
= | 将b+a的结果赋给a | a=b+c#a=30 |
+= | a+=等价于a=a+b | a=15 |
-= | a-=等价于a=a-b | a=-5 |
*= | a*=等价于a=a*b | 50 |
/= | a/=b等价于a=a/b | a=0.5 |
%= | a%=等价于a=a%b | a=5 |
//= | a//=b等价于a=a//b | a=0 |
**= | a**=b等价于a=a**b |
逻辑运算
逻辑与and对应汉语的意思是‘并且’,‘同时’
逻辑或or 对应汉语意思为‘或者’
逻辑非not对应汉语意思为‘相反’
注意事项
优先级not>and>or
身份运算符
is :判断两个标识符是否引用自同一个实体【对象】,比较的是两个对象的ID是否一致,如果相同为真,否则为假
is not:判断两个标识符是不是引用自不同的实体【对象】如果两个对象的id不同,结果为真,否则为假
注意:is和==的区别
is用于判断两个变量引用实体是否为同一个【id】
==用于判断两个变量的值是否相同,但id不一定相同
成员运算符
in:如果在指定的序列中找到指定的值,则返回True,否则返回False
not in:如果在指定的序列中未找到指定的值,则返回True,否则返回False
数学函数
函数名 | 函数的说明 | 示例 |
---|---|---|
abs | 取绝对值 | abs(-10) |
pow(x,y) | x的y次方 | pow(10,2)求10的平方 |
round(x,[n]) | 浮点数的4舍5入,n代表保留小数的位数 | round(3.4567) |
max() | 求参数的最大值 | max(21,34,23,55) |
min() | 求参数的最小值 | min(21,32,23,55) |
math.ceil() | 需要导入import math库 向上取整 | math.ceil(18.4)#19 |
math.floor() | 需要导入import math库 向下取整 | math.floor(18.4)#18 |
math.sqrt | 需要导入import math库 求平方根 | math.sqrt(100) |
随机函数
函数名 | 函数说明 |
---|---|
random.randrange(start,stop,step) | start 指定范围的起始值 包含本身,默认是0;stop 指定范围的结算值不包含本身; step 步长,默认步长是1.该函数返回一个整数 |
random.randint(start,end) | 返回【start end】之间的一个随机整数,start必须小于end |
random.random() | 返回一个[0.0,1.0]之间的随机小数 |
import random
print(random.randint(0,100)) # 取[0,100]之间的随机整数
print(random.random())
randrange
num = start + i*2
print(random.randrange(0,100,2)) # 取0-100之间的偶数
print(random.randrange(1,100,2)) # 取0-100之间的奇数
if-else表达式
表达式1 if 条件 else 表达式2
如果条件为真假结果是表达式1的值,否则结果是表达式2的值
if 条件表达式:
语句块A
else:
语句块B
如果条件表达式的结果为真,执行语句块A,否则执行语句块B
注意:
1 缩进
2 :必须英文半角
3 :后面如果有语句,要加一个空格
score = randint(0,100)
if score < 60:
print("混合双打")
else:
if score < 70:
print("女子单打")
else:
if score < 80:
print("男子单打")
else:
print("奖励多多")