python基础语法学习笔记(二):表达式与运算符
1.表达式
- 由一个或者几个数字或者变量和运算符组合成的一行代码
- 通常会返回一个结果
2.运算符
- 由一个以上的值经过变化得到新值的过程就叫运算
- 用于运算的符号叫运算符
- 运算符分类:
- 算数运算符
- 比较或者关系运算符
- 赋值运算符
- 逻辑运算符
- 位运算
- 成员运算
- 身份运算符
2.1 算数运算符
- 进行算数运算的符号
- python没有自增自减运算符
# +,-跟正常算术运算符一模一样
a = 9+3-2
print(a)
# 乘号用星号(*)代替
a = 9 * 4
print(a)
# 除号用斜杠(/)代替
a = 9/4
print(a) # 2.25
# % 取余运算
# 两个数字相除应该有商数有余数
# % 只会得到余数
a = 9 % 4
print(a)# 1
# // 表示取商运算,也叫地板除
a = 9 // 4#2
print(a)
# ** 表示幂运算
a = 9 ** 4#6561
print(a)
a = 3 ** 3
print(a)
2.2比较运算符
- 对两个变量或者值进行比较的运算符
- 返回布尔值,True/False
# == , 等于号
a = 3 ** 4
# 下面语句执行书序是
# 1, 计算 a == 80
# 2. 把结果放入b中
b = a == 80
print(b)
# 返回False
# != 不等于
print( 9 != 8 )
# 返回Ture
# > 大于
# < 小于
# >= 大于等于
# <= 小于等于
2.3赋值运算符
- 例如a +=1 表示 a = a+1,常用于循环中
a = 0
c = a = 4
a += 1
print(a)
### 返回5
2.4 逻辑运算符
- 对布尔值进行计算
- and :与 &
- or :或 |
- not :非
- python中逻辑运算没有异或运算
- 运算规则:
- and看做乘法, or看做加法,
- True看做1, False看做0
- 则逻辑运算就能转换成整数数学运算
- 最后结果如果是0则为False, 否则为True
- 逻辑运算的短路问题
- 逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回,例如在or运算中,一旦前面出现了True直接返回True不再计算后续值。
# 逻辑运算符案例
a = True
b = False
c = True
# 以下式子等价于 d = 1 * 0 + 1
d = a and b or c
print(d) # 返回True
d = a or b and a
print(d) # 返回True
# 逻辑运算的短路案例
# 下面的逻辑表达式,a的值一定是True,则运行到or的时候,整个表达式不在向下计算
a = True or 0
# 代码示例)下面表达式的b值一定是Falese,运行到and时,整个表达式再向下进行
b = False and 0 and 1 and 0 and True
print(b)
print(a)
2.5成员运算符号
- 用来检测某一个变量是否是另一个变量的成员
- in
- not in
l = [1,2,3,4,5]
a = 7
b = a in l
print(b) # False
a = 4
print(a in l) # True
print(a not in l)# False
2.6身份运算
- is: 用来检测两个变量是否是同一个变量
– 语法就是 var1 is var2 - is not: 两个变量不是同一个变量
a = 9
b = 9
print( a is b)
True
a = "皮卡丘"
b = "皮卡丘"
print( a is b)
False
运算符的优先级问题
永远记住,括号具有最高优先级
优先级表格
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 'AND'
^ | 位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符
python基础语法学习笔记(二):表达式与运算符的更多相关文章
- Python 基础语法学习笔记
以下运行结果均通过Python3.5版本实测! 1.列表转换为字典 a = ['a', 'b'] b = [1, 2] c = ['c','d'] print (dict([a,b,c])) 输出结果 ...
- Python 基础语法学习(第一讲)---类的使用
[写在前面]:其实自学python有一段时间了,但是一直没想起来要写博客来记录自己的学习,今天才感觉要写点什么让自己学的更扎实一点,所以从今天开始更新python自学系列,希望看见文章的大佬们可以指点 ...
- Python基础班学习笔记
本博客采用思维导图式笔记,所有思维导图均为本人亲手所画.因为本人也是初次学习Python语言所以有些知识点可能不太全. 基础班第一天学习笔记:链接 基础班第二天学习笔记:链接 基础班第三天学习笔记:链 ...
- Python基础教程学习笔记:第一章 基础知识
Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入“p ...
- python基础语法小笔记
这几天看着python,然后就记下一些自己觉得需要注意以下的基础语法吧! 如下: for i in range(0,100)表示从0到99,不包括后边界 单引号(')和双引号("" ...
- python 基础语法学习
.注释 python单行注释以#开头 如:#!/usr/bin/env python3 #查找运行环境 多行注释有' ' '和" " " .python最具有特色的是使用 ...
- Swift基础语法学习总结二
1.函数 1.1 func funcNmae()->(){} 这样就定义了一个函数,它的参数为空,返回值为空,如果有参数和返回值直接写在两个括号里就可以了 1.2 参数需要指明类型,而如果没有返 ...
- 【学习笔记】Python基础教程学习笔记
教程视频网盘共享:http://pan.baidu.com/s/1hrTrR5E 03-python基础.if判断 print 输出数据 print("hahahah")----- ...
- python基础===requests学习笔记
这里有一个新的学习requests网站:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html2017/11/30 Requ ...
- python基础语法学习常见小问题
说明:我是最近觉得python在完成很多工作中方便使用而且功能强大,想突击学习一下.用的是廖雪峰老师的教程,学习python3.X.这里是廖雪峰老师的网站链接: http://www.liaoxuef ...
随机推荐
- 周而复始,往复循环,递归、尾递归算法与无限极层级结构的探究和使用(Golang1.18)
所有人都听过这样一个歌谣:从前有座山,山里有座庙,庙里有个和尚在讲故事:从前有座山....,虽然这个歌谣并没有一个递归边界条件跳出循环,但无疑地,这是递归算法最朴素的落地实现,本次我们使用Golang ...
- electron中使用adm-zip将多个excel文件压缩进文件夹,使用XLSX以及XLSXStyle生成带样式excel文件
需求:electron环境下想要实现根据多个表生成多个Excel文件,打包存入文件夹内并压缩下载到本地.(实际场景描述:界面中有软件工程一班学生信息.软件工程二班学生信息.软件工程三班学生信息,上方有 ...
- Python实验报告(第5章)
实验5:字符串及正则表达式 一.实验目的和要求 学会使用字符串的常用操作方法和正确应用正则表达式 二.实验环境 软件版本:Python 3.10 64_bit 三.实验过程 1.实例01:使用字符串拼 ...
- [python] 向量检索库Faiss使用指北
Faiss是一个由facebook开发以用于高效相似性搜索和密集向量聚类的库.它能够在任意大小的向量集中进行搜索.它还包含用于评估和参数调整的支持代码.Faiss是用C++编写的,带有Python的完 ...
- NC14501 大吉大利,晚上吃鸡!
题目链接 题目 题目描述 最近<绝地求生:大逃杀>风靡全球,皮皮和毛毛也迷上了这款游戏,他们经常组队玩这款游戏. 在游戏中,皮皮和毛毛最喜欢做的事情就是堵桥,每每有一个好时机都能收到不少的 ...
- 真正“搞”懂HTTP协议07之body的玩法(实践篇)
我真没想到这篇文章竟然写了将近一个月,一方面我在写这篇文章的时候阳了,所以将近有两周没干活,另外一方面,我发现在写基于Node的HTTP的demo的时候,我不会Node,所以我又要一边学学Node,一 ...
- Openmp Runtime 库函数汇总(上)
Openmp Runtime 库函数汇总(上) omp_in_parallel,如果当前线程正在并行域内部,则此函数返回true,否则返回false. #include <stdio.h> ...
- render到底是什么,该如何使用它
一.前言 1.vue程序的运行过程:模板 -> 进行编译 -> 生成ast树 -> 数据绑定 -> 生成render函数 -> 成虚拟dom树 -> 真实dom树 ...
- 处理流中的异常-JDK7-和JDK9流中异常的处理
处理流中的异常 JDK7和JDK9流中异常的处理 jdK7的新特性在try的后边可以增加一个(),在括号中可以定义流对象那么这个流对象的作用域就在try中有效try中的代码执行完毕,会自动把流对象释放 ...
- Ubuntu 22.04 GCC Arm 12.2.rel1编译 DAPLink
ARMmbed / DAPLink 项目 仓库地址 https://github.com/ARMmbed/DAPLink Arm Mbed 应该属于Arm的机构或者是Arm资助的机构. 常用的 DAP ...