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基础语法学习笔记(二):表达式与运算符的更多相关文章

  1. Python 基础语法学习笔记

    以下运行结果均通过Python3.5版本实测! 1.列表转换为字典 a = ['a', 'b'] b = [1, 2] c = ['c','d'] print (dict([a,b,c])) 输出结果 ...

  2. Python 基础语法学习(第一讲)---类的使用

    [写在前面]:其实自学python有一段时间了,但是一直没想起来要写博客来记录自己的学习,今天才感觉要写点什么让自己学的更扎实一点,所以从今天开始更新python自学系列,希望看见文章的大佬们可以指点 ...

  3. Python基础班学习笔记

    本博客采用思维导图式笔记,所有思维导图均为本人亲手所画.因为本人也是初次学习Python语言所以有些知识点可能不太全. 基础班第一天学习笔记:链接 基础班第二天学习笔记:链接 基础班第三天学习笔记:链 ...

  4. Python基础教程学习笔记:第一章 基础知识

    Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入“p ...

  5. python基础语法小笔记

    这几天看着python,然后就记下一些自己觉得需要注意以下的基础语法吧! 如下: for i in range(0,100)表示从0到99,不包括后边界 单引号(')和双引号("" ...

  6. python 基础语法学习

    .注释 python单行注释以#开头 如:#!/usr/bin/env python3 #查找运行环境 多行注释有' ' '和" " " .python最具有特色的是使用 ...

  7. Swift基础语法学习总结二

    1.函数 1.1 func funcNmae()->(){} 这样就定义了一个函数,它的参数为空,返回值为空,如果有参数和返回值直接写在两个括号里就可以了 1.2 参数需要指明类型,而如果没有返 ...

  8. 【学习笔记】Python基础教程学习笔记

    教程视频网盘共享:http://pan.baidu.com/s/1hrTrR5E 03-python基础.if判断 print 输出数据 print("hahahah")----- ...

  9. python基础===requests学习笔记

    这里有一个新的学习requests网站:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html2017/11/30 Requ ...

  10. python基础语法学习常见小问题

    说明:我是最近觉得python在完成很多工作中方便使用而且功能强大,想突击学习一下.用的是廖雪峰老师的教程,学习python3.X.这里是廖雪峰老师的网站链接: http://www.liaoxuef ...

随机推荐

  1. 周而复始,往复循环,递归、尾递归算法与无限极层级结构的探究和使用(Golang1.18)

    所有人都听过这样一个歌谣:从前有座山,山里有座庙,庙里有个和尚在讲故事:从前有座山....,虽然这个歌谣并没有一个递归边界条件跳出循环,但无疑地,这是递归算法最朴素的落地实现,本次我们使用Golang ...

  2. electron中使用adm-zip将多个excel文件压缩进文件夹,使用XLSX以及XLSXStyle生成带样式excel文件

    需求:electron环境下想要实现根据多个表生成多个Excel文件,打包存入文件夹内并压缩下载到本地.(实际场景描述:界面中有软件工程一班学生信息.软件工程二班学生信息.软件工程三班学生信息,上方有 ...

  3. Python实验报告(第5章)

    实验5:字符串及正则表达式 一.实验目的和要求 学会使用字符串的常用操作方法和正确应用正则表达式 二.实验环境 软件版本:Python 3.10 64_bit 三.实验过程 1.实例01:使用字符串拼 ...

  4. [python] 向量检索库Faiss使用指北

    Faiss是一个由facebook开发以用于高效相似性搜索和密集向量聚类的库.它能够在任意大小的向量集中进行搜索.它还包含用于评估和参数调整的支持代码.Faiss是用C++编写的,带有Python的完 ...

  5. NC14501 大吉大利,晚上吃鸡!

    题目链接 题目 题目描述 最近<绝地求生:大逃杀>风靡全球,皮皮和毛毛也迷上了这款游戏,他们经常组队玩这款游戏. 在游戏中,皮皮和毛毛最喜欢做的事情就是堵桥,每每有一个好时机都能收到不少的 ...

  6. 真正“搞”懂HTTP协议07之body的玩法(实践篇)

    我真没想到这篇文章竟然写了将近一个月,一方面我在写这篇文章的时候阳了,所以将近有两周没干活,另外一方面,我发现在写基于Node的HTTP的demo的时候,我不会Node,所以我又要一边学学Node,一 ...

  7. Openmp Runtime 库函数汇总(上)

    Openmp Runtime 库函数汇总(上) omp_in_parallel,如果当前线程正在并行域内部,则此函数返回true,否则返回false. #include <stdio.h> ...

  8. render到底是什么,该如何使用它

    一.前言 1.vue程序的运行过程:模板 -> 进行编译 -> 生成ast树 -> 数据绑定 -> 生成render函数 -> 成虚拟dom树 -> 真实dom树 ...

  9. 处理流中的异常-JDK7-和JDK9流中异常的处理

    处理流中的异常 JDK7和JDK9流中异常的处理 jdK7的新特性在try的后边可以增加一个(),在括号中可以定义流对象那么这个流对象的作用域就在try中有效try中的代码执行完毕,会自动把流对象释放 ...

  10. Ubuntu 22.04 GCC Arm 12.2.rel1编译 DAPLink

    ARMmbed / DAPLink 项目 仓库地址 https://github.com/ARMmbed/DAPLink Arm Mbed 应该属于Arm的机构或者是Arm资助的机构. 常用的 DAP ...