常见运算符
开发和数学类似,存在很多数据的运算规则(类似于数学中四则运算)。
算术运算符
关系(比较)运算符
逻辑运算符
赋值运算符
三目运算符
is运算符
所属运算符
位运算符
算术运算符
算术运算符:指的数学中算术,及相关规则
+ 加
- 减
* 乘
/ 除
// 整除、地板除法
% 求模、求余数
** 幂次方
a = 10
>>> b = 3
c = 2
>>> a + b
>>> a - b
>>> a * b
30
>>> a / b
3.3333333333333335
>>> a // b
3
>>> a % b
1
>>> a % c
0
>>> a ** b
1000
>>> a ** c
100
>>> a
10
>>> a ** 0.5
3.1622776601683795
>>>
>>>
>>> a
10
>>> a ** 0.333333333333333333333333333333333
2.154434690031884
>>> a ** (1 / 3)
2.154434690031884
>>> 27 ** (1 / 3)
3.0
关系运算符
关系运算符,又被称比较运算符,说明的是多个数之间的关系。
关系运算符的结果是布尔类型,也就是说,是否成立。
>
<
>=
<=
== # 等于符号
!=
a = 10
b = 3
c = 2
>>> a > b
True
>>> a
10
>>> b
3
>>> a < b
False
>>> a >= 10
True
>>> a <= 10
True
>>> a == b
False
>>> a != b
True
逻辑运算符
逻辑运算符说明的问题是,多个运算符之间的关联关系。
and 与运算符 代表一种并且关系
or 或运算符 代表一种或者关系
not 非运算符 代表取反
>>> a > b and a > c
True
>>> a > b and a < c
False
>>> a > b or a < c
True
>>> a > b
True
>>> not a > b
False
>>>
赋值运算符
将值赋予某个变量,最常见的=。
= # 将等号右侧的值
+= # a = 20; a = a + 10 <===> a += 10
-=
*=
/=
//=
%=
**=如果此时,我们要数据加1或者减一。
a = 10
print(a += 1)
print(a -= 1)
自减和自减运算符
注意:python没有自加和自减运算符。龟叔认为没有必要学习这个复杂的运算符。
如java中:
int a = 10;
a++; // a = 11
++a; // a = 12
--a; // a = 11
a--; // a = 10
int b = a++; // a = 11 b = 10
int c = ++a; // a = 12 c = 12
int d = --a; // d = 11
int e = a--; // e = 11总结:前加加和前减减运行的优先级别非常高,仅次于括号。而后加加和后减减优先级别非常低,低到比赋值符(=)还低。所以一定要注意这个问题。
三目运算符
三目运算符,又被称为三元运算符,本质是if else的简写方式,将多行代码简化为一行代码。
简单的回忆下C、C++、Java语言中的三目运算符:
// 变量 = 表达式 ? 值1 : 值2
int a = 10;
int b = 20;
int c = a > b ? 100 : 200;
int d = a < b ? 100 : 200;python中,三目运算符是这样写的:
# 变量 = 值1 if 表达式 else 值2
a = 10
b = 3
c = 100 if a > b else 1000
>>> c
100
>>> d = 100 if a < b else 2000
>>> d
2000
所属运算符
in 表示是否在里面
not in 表示不在里面
所属运算符表示的判断某一个变量是否在某个容器(可迭代对象)中。
>>> a
[1, 2, 3, 4, 45, 10, 56]
>>>
>>>
>>> b = 3
>>>
>>> b in a
True
>>>
>>>
>>> 101 in a
False
>>> b not in a
False
>>> 101 not in a
True
is运算符
python中存在一个is运算符,该运算符跟==非常像,都是用来判断结果的。
is 判断的是两个变量的内存地址
== 判断的两个变量的值
id全局函数,返回变量的内存地址is not
表示is的取反,判断两个变量不是同一个地址
位运算符
计算机底层的运算规则,相当来说,有点难。暂时不讲。
程序控制流程
程序控制流程,又被称为三大流程。
-
顺序结构
-
选择结构
-
循环结构
顺序结构
顺序结构,说的就是程序的整体运行顺序。
python是一门弱数据类型的编程语言,也是一门脚本语言,所有代码是逐行运行的。
从左到右,自上而下执行。
# python中,分号和换行都是语句的结束标志 # 但是建议使用换行,不推荐使用分号 a = 10; b = 20 print(a, b)
选择结构
选择结构,说的是程序在运行中,面临多种情况的一种选择问题。
-
单分支
-
双分支
-
多(三)分支
单分支
只考虑某一种情况,不管其他情况。
语法结构:
""" if 条件: # 条件如果成立,则执行if中的代码 """
age = int(input("请输入您的年龄:")) # 判断是否成年 if age >= 18: print("恭喜您,成年了") print("可以干一些成年人的事") print("可以去网吧了") print("game over")
作业
作业1:两个数交换,要求使用异或法完成
作业2:判断一个数,是否是2的指数
2的指数
0000 0010 0000 0001
0000 0100 0000 0011
0000 1000 0000 0111
0001 0000 0000 1111
提示:所有2的指数:n&(n - 1) == 0
作业3:给定成绩,判断用户成绩的档次
100:提示满分
90~100:优秀
80~100:良好
70~80:还可以,多多努力
60~70:合格
0~60:不合格
0:鸡蛋
作业3:有1、3、5、7、9组成的所有不重复的四位数之和是多少?( )
A、666700 B、666600
C、678860 D、665500
作业4:一个会议有12个员工,假设已有8个员工是女性,求所有员工都是女性的概率( )
A、11/23 B、12/35
C、2/9 D、1/8
作业5:
在控制台上,输入如下信息
a a^2 a^3
1 1 1
2 4 8
3 9 27
作业6:下列哪一项是“4是奇数或-9为正数”的否定( )
A、4是偶数或-9不是负数
B、4是奇数或-9不是负数
C、4是偶数和-9是负数
D、4是奇数和-9不是负数
作业7:如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是( )
A、 C=A|B
B、 C=~A
C、 C=~B
D、 C=A&B
作业8:判断一个整数是奇数还是偶数,至少有两种方式实现(位运算已经讲解的话)
作业10:求矩形的面积和周长
作业11:根据天数(从控制台上输入)计算周数和剩余的天数
作业12: 根据已知圆的半径radius(从控制台上输入),求其面积和周长(PI可以使用Math.PI,也可以使用3.14)
答案:
作业一:
作业二:
作业三:
作业五:
作业八:
作业九:
作业十:
作业十一:
选择题:
3.B 4.D 6.C 7.D