python程序设计第三章运算符:程序猿编程课堂Python学习之入门篇4
我们知道数学里面有各种运算,比如1 2、3-2、4*5、8/4等等,其中加、减、乘、除都叫做运算符,当然在Python编程中不仅仅只有这四种运算符,主要归类如下:
- 算术运算符
- 赋值运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 成员运算符
- 身份运算符
本章节我们将介绍前5个运算符,成员运算符和身份运算符将在后续章节学习复杂数据类型的时候再做介绍。
算术运算符除了常见的加( )、减(-)、乘(*)、除(/),Python编程中还有
- 取模(求余)运算符是“%”,即返回除法的余数,比如13 % 5 = 3(13除5等于2余数为3);
- 幂运算,其运算符是“**”,比如2 ** 3 = 8(2的三次方);
- 取整除,其运算符是"//",比如8 / / 3 = 2 (8除以3约等于2.667,取整便是2)。
我们用下面这个例子在熟悉下Python的算术运算符:
print(13 / 5)print(13 % 5)print(2 ** 3)print(8 // 3)
输出:
2.6382赋值运算符
前面章节我们学过变量,那么变量就要给它赋值,比如num=123,我们知道num是变量,那么“=”便是赋值运算符,就是赋予变量num的值为123。除了=这个最基本的赋值运算符外,Python还有以下这几种赋值运算符:
- = 加法赋值运算,比如num = 123 等效 num = num 123;
- -= 减法赋值运算,num -= 123 等效 num = num - 123;
- *= 乘法赋值运算,num *= 123 等效 num = num *123;
- /= 除法赋值运算,num /= 123 等效 num = num / 123;
- %= 取模赋值运算,num %= 123 等效 num = num % 123;
- **= 幂赋值运算,num **= 123 等效 num = num ** 123;
- //= 取整除赋值运算,num //= 123 等效 num = num // 123;
动手试下这个例子:
num = 100num = 100print(num)num /= 5print(num)num %= 9print(num)num = 4num **= 2print(num)num //= 7print(num)
输出:
20040.04.0162关系运算符
关系运算即比较运算,返回的值是bool型,主要包括:
- == 等于,即比较两个值是否相等;
- != 不等于,比较两个值是否不相等,以下类似;
- > 大于
- < 小于
- >= 大于等于
- <= 小于等于
同样用个例子看下:
num1 = 123num2 = 100print(num1 == num2)print(num1 != num2)print(num1 > num2)print(num1 <= num2)
输出:
FalseTrueTrueFalse逻辑运算符
Python中逻辑运算主要有3个,主要是针对不同布尔值进行逻辑运算。
(1)and 逻辑与, x and y,如果x为False或者0,则返回False或0,如果x为True或者大于0,则返回y值,例子如下:
x = Falsey = 10print(x and y)x = 0y = 10print(x and y)x = 100y = 10print(x and y)
输出:
False010
(2)or 逻辑或,x or y,如果x为True或者大于0则返回x的值,否则返回y的值
例子如下:
x = 100y = 10print(x or y)x = Falsey = 10print(x or y)
输出:
10010
(3)not 逻辑非,not x,非操作,x为True则返回False,为False则返回True
例子如下:
x = Falseprint(not x)x = 100print(not x)
输出:
TrueFalse
位运算符
位运算是基于计算机二进制来计算的,所以首先你要了解二进制,不了解的同学请先去认真了解下二进制。
比如x = 20,则其二进制为10100。
位运算主要有:
- & 按位与,两个二进制数的相同位都为1则计算结果该位即为1,否则为0;
- | 按位或,两个二进制数的相同位只要有一个是1,则该位结果即为1,否则为0;
- ^ 按位异或,两个二进制数的相同位为不同值时,该位计算结果为1,否则为0;
- ~ 按位取反,对某个二进制数的各个位取反,1变成0,0变成1,~x相当于 -x-1
- << 按位左移,对某个二进制数的所有位向右移动指定的位数,超出左边的高位去掉,低位补0;
- >> 按位右移,对某个二进制数的所有位向左移动指定的位数,超出右边的位数去掉。
我们看个例子:
x = 20 # 二进制为 0001 0100y = 46 # 二进制为 0010 1110z = 0z = x & y # 按位与 应为 0000 0100 即十进制的4print(z)z = x | y # 按位或 应为 0011 1110 即十进制的62print(z)z = x ^ y # 按位异或 应为 0011 1010 即十进制58print(z)z = ~x # 按位取反,则为 1110 1011 即有符号十进制-21print(z)z = x << 2 # 0101 0000print(z)z = x >> 2 # 0000 0101print(z)
输出:
46258-21805运算符优先级
跟数学运算一样乘除优先于加减,Python中的运算都是有优先级,即什么先算什么后算都是有规定的。
我们从运算优先级最高到低逐一排序:
好了,本章就介绍到这里,还是强调下多上手练习!
前方有只程序猿:大家好,我是一只会写代码的IT猿,希望能与大家共同探讨,共同进步!欢迎关注我!
谢谢~
- 05-08寻隐者不遇省略的问话应该是什么?隐者的,不遇和寻访者的不见
- 04-04重庆渝北职业教育中心官网:逐梦新章,行稳致远渝北职业教育中心举行2023年秋期开学典礼
- 06-02铁牛巅峰时期cuba:铁牛退赛他曾是CUBA的内线霸主
- 03-22外包人员一般能干多久:外包和正式员工的区别如此之大
- 01-12动词转换为名词的单词:单词识记动词转换成名词
- 05-01电视剧金水桥边在什么地方拍摄的?众明星演绎金水桥边一部不一样的反特剧
- 06-15上海兼职副业晚上2-3小时临时工:在上海兼职一晚上搬运工
- 03-09绝地求生最高画质电脑配置表 绝地求生最低配置多少
- 05-22夜跑零下5度跑步文案,好书推荐,耐力
- 04-14一汽路试新一代奥迪q3 试一汽-大众全新奥迪Q3
- 06-11仓鼠表情包吃吃喝喝,可爱仓鼠我要吃薯片表情包
- 04-06李沁个人写真高清,李沁生日写真她自温柔且有力量
- 03-02简单大方的富有文采的男孩名字:儒雅大气有涵养的男孩名字
- 03-25绿化工程结算范本:绿化工程的结算该怎么做
- 03-103.8节免门票的景点:听说这里不仅仅是世界遗产
- 06-10怎样做一个有担当的护士长,修炼,当好护士长
热门
推荐
- 1日本美女人体艺术写真作品440
- 2我们的新老师作文五篇280
- 3龙继斑鱼庄加盟费用以及加盟条件121
- 4脚垫的防治方法414
- 5部队决心书范文157
- 6三茶六礼习俗是怎么来的356
- 7小学四年级的数学应该怎么学144
- 8高二数学教师优秀的教学工作总结265