python基础一(基础运算符,判断)
1.python运算符
算数运算
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 - 两个对象相加 | a + b 输出结果 30 |
- | 减 - 得到负数或是一个数减去另一个数 | a - b 输出结果 -10 |
* | 乘 - 两个数相乘或是返回一个被重复若干次的字符串 | a * b 输出结果 200 |
/ | 除 - x除以y | b / a 输出结果 2 |
% | 取模 - 返回除法的余数 | b % a 输出结果 0 |
** | 幂 - 返回x的y次幂 | a**b 为10的20次方, 输出结果 100000000000000000000 |
// | 取整除 - 返回商的整数部分(向下取整) | 9//2 == 4 -9//2 == -5 |
比较运算
运算符 | 描述 | 实列 |
---|---|---|
== | 等于 - 比较对象是否相等 | 1 == 2返回False |
!= | 不等于 - 比较两个对象是否不相等 | 1 != 2返回True |
<> | 不等于 - 比较两个对象是否不相等 | 1 <> 2返回True |
> | 大于 - 返回x是否大于y | 1 > 2返回False |
< | 小于 - 返回x是否小于y | 1 < 2返回True |
>= | 大于等于 - 返回x是否大于等于y | 1 >= 2返回False |
<= | 小于等于 - 返回x是否小于等 | 1 <= 2返回True |
所有比较运算符返回1表示真,返回0表示假。这分别与特殊变量True和False等价。
True和False的首字母是大写的.
逻辑运算
运算符 | 描述 | 实例 |
---|---|---|
and | 布尔“与” -多个条件均为True时结果才为True如果x为False,x and y返回False否则返回y的计算值 | a and b返回True |
or | 布尔”或” -多个条件中任意一个结果为True结果亦为True如果x为True,它返回True否则返回y的计算值 | a or b返回True |
not | 布尔”非” -如果x为True,返回False如果x为False,返回True | not a and b返回False |
短路原则
- and
- 当条件1为假时,条件2不作判断
- 当条件1为真时才去判断条件2
- or
- 当条件1为真时,条件2不作判断
- 当条件1为假时才去判断条件2
成员运算
运算符 | 描述 | 实例 |
---|---|---|
in | 若在指定序列中找到值返回True否则返回False | x in y,若x在y序列中返回True |
not in | 若在指定序列中未找到值返回True否则返回False | x not in y,若x不在y序列中返回True |
身份运算
运算符 | 描述 | 实例 |
---|---|---|
is | is是判断两个标识符是否引用同一对象 | x is y若id(x)等于id(y)结果返回True否则返回False |
is not | is not是判断两个标识符是否引用不同对象 | x is not y若id(x)不等于id(y)结果返回True否则返回False |
位运算
运算符 | 描述 | 实例 |
---|---|---|
& | 按位与运算符 | a & b输出结果12,二进制:0000 1100 |
I | 按位运算符 | a I b输出结果61,二进制:0011 1101 |
^ | 按位异或运算 | a^b输出结果49,二进制:0011 0001 |
~ | 按位取反运算 | ~ a输出结果-61,二进制:1100 0011 |
<< | 左移动运算符 | a << 2输出结果240,二进制:1111 0000 |
>> | 右移动运算符 | a >> 2输出结果15,二进制:0000 1111 |
实例
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)
1 - c 的值为: 12
2 - c 的值为: 61
3 - c 的值为: 49
4 - c 的值为: -61
5 - c 的值为: 240
6 - c 的值为: 15
赋值运算
运算符 | 描述 | 实例 |
---|---|---|
= | 简单的赋值运算符 | a = 1将1赋值为a变量 |
+= | 加法赋值运算符 | a += 1等效于a = a + 1 |
-= | 减法赋值运算符 | a -= 1等效于a = a - 1 |
*= | 乘法赋值运算 | a *= 2等效于a = a * 2 |
/= | 除法赋值运算符 | a /= 2等效于a = a / 2 |
//= | 整除赋值运算符 | a //= 2等效于a = a // 2 |
%= | 取模赋值运算符 | a //= 2等效于a = a // 2 |
**= | 幂赋值运算符 | a **= 2等效于a = a ** 2 |
实例
a = 20
b = 10
c = a + b #20+10=30
print("1 - c的值为" ,c)
c += a #30+20=50
print("2 - c的值为" ,c)
c *= a #50*20=1000
print("3 - c的值为" ,c)
c /= a #1000/20=50
print("4 - c的值为" ,c)
c = 2
c %= a #c = (2/20)*20=2
print("5 - c的值为" ,c)
c **= a #2*2*2*2*2*2*2.......*2=1048576 一共20次
print("6 - c的值为" ,c)
c //= a #1048576/20=52,428.8 取整
print("7 - c的值为" ,c)
1 - c的值为 30
2 - c的值为 50
3 - c的值为 1000
4 - c的值为 50.0
5 - c的值为 2
6 - c的值为 1048576
7 - c的值为 52428
运算符优先级
运算符 | 描述 |
---|---|
** | 指数 |
~ + - | 按位翻转,一元加号和减号(最后两个的方法名为+@和-@) |
* / % // | 乘、除、取模和整除 |
+ - | 加法 减法 |
>> << | 右移、左移运算符 |
& | 位and |
^ I | 位运算符 |
<= < > >= | 比较运算符 |
< > == ! = | 等于运算符 |
=% =/ =// -= += *= **= | 赋值运算符 |
is ,is not | 身份运算符 |
in ,not in | 成员运算符 |
not and or | 逻辑运算符 |
2. 判断
if条件判断
// 语法
# 单分支if
a = 1
if a > 0:
print('hehe')
# 双分支if
a = 100
if a < 100:
print("henhen")
else:
print("haha")
# 多分支if
a = 100
if a < 100:
print("hehe")
elif a > 100:
print("xixi")
else:
print("haha")
案列
//用户登入验证
name = input('please enter your account number:')
password = input('please enter password:')
if name == "xym" and password == "123":
print("login successful")
else:
print("username and password error")
// 学习成绩判读
result = input("please enter your results:")
if result >= str(90):
print("achievement of excellent")
elif result >= str(80):
print("achievement of excellent")
elif result >= str(70):
print("in the results")
elif result > str(60):
print("achievement og the exam")
else:
print("for poor grades")
if嵌套
proof = int(input("Input the driver's blood alcohol level per 100ml:"))
if proof < 20:
print("A driver does not constitute drunk driving")
else:
if proof < 80:
print("The driver constitutes drunk driving")
else:
print("The driver constitutes drunken driving")
//运行
Input the driver's blood alcohol level per 100ml:10
A driver does not constitute drunk driving
进程已结束,退出代码0
pass
//无内容的 if 语句,请使用 pass 语句来避免错误。
a = 1
b = 2
if a > b:
pass