运算符与流程控制

运算符

  • 赋值运算

    • 用'='表示,'='的左边只能是变量
  • 算术运算

    • +、-、*:加、减、乘
    • /:除法运算,运算结果为浮点数
    • //:除法运算,运算结果为整数(商)
    • %:求余
    • **:求幂
  • 复合运算

    • +=、-=、=、/=、//=、%=、*=
  • 关系运算(比较运算)

    • >、>=、<、<=、==、!=
    • 由操作数和运算符组成的式子称为表达式
    • 关系表达式是有值的(布尔值),符合数学逻辑值为True,不符合数学逻辑值为False
  • 逻辑运算

    • 与(and):两边的表达式同时为真,值才为真
    # 判断是否在100~200之间
    print((a >= 100) and (a <= 200))
    # 与上式等价
    print(100 <= a <= 200)
    • 或(or):两边的表达式一个为真,值就为真
    # 判断是否是闰年
    y = int(input('请输入一个年份:'))
    print(((y%4==0) and (y%100!=0)) or (y%400==0))
    • 非(not):用于取反表达式,真变假,假变真

      • 逻辑非得运算经常会伴随着隐式类型转换
      • 很多时候是为了简化表达式才使用
  • 成员运算

    • in、not in:判断一个变量是否是另一个变量的成员,是返回True,不是返回False
    • 一般用在字符串、列表、元组、集合、字典等成员的判断
    • 若是字典判断的是键
    l = ['李白', '杜甫', '白居易', '欧阳修']
    print('李白' in l) d = {'a':'apple', 'b':'banana', 'c':'cat', 'd':'dog'}
    print('aa' not in d)
  • 按位运算(了解)

    • &:按位与,对应的数据同时为1,值才为1
    • |:按位或,对应的数据一个为1,值就为1
    • ^:按位异或,对应的数据相同时值为0,不同时值为1
    • ~:按位取反,对应 数据位1变0,0变1
    • <<:按位左移,相当于乘2
    • >>:按位右移动,相当于除2
  • 优先级:无需记录运算符的优先级,需要的时候添加()即可。

流程控制

  • 按照程序的执行流程,程序可以分为三种结构:顺序结构、分支结构、循环结构

  • python中的代码层次是通过缩进表现的

  • 顺序结构:代码从上到下,依次执行,没有语法要求

  • 分支结构:if-else

    • 格式1
    if 表达式:
    语句块

    执行流程:当程序执行到if语句时,首先判断表达式的真假;若表达式的值为真(True),则执行语句块;若表达式的值为假(False),则跳过语句块,继续向下执行。

    • 格式2
    if 表达式:
    语句块1
    else:
    语句块2

    执行流程:当程序执行到if-else语句时,首先判断表达式的真假;若表达式的值为真,则执行语句块1;若表达式的值为假,则执行else后面的语句块2.

    • 格式3
    if 表达式1:
    语句块1
    elif 表达式2:
    语句块2
    ... else:
    语句块n
    1. elif的个数不限
    2. else可以不写
    • 练习:
    1.输入两个整数,打印较大的那个值
    2.输入三个整数,按照从小到大的顺序打印
    3.输入一个三位数,打印其个位、十位、百位上的数
    4.输入一个年份,判断是否为闰年,是打印一句话,不是打印另一句话
    5.输入一个整数,判断其是否既能被3整除,又能被5整除
  • 循环结构(while)

    • 格式
    while 表达式:
    语句块

    执行流程:当程序执行到while语句时,首先判断表达式的真假。当表达式的值为真时,执行对应的语句块,之后返回while,继续判断表达式的真假;若表达式的真假,则跳过语句块。

    1. 表达式也叫循环条件

    2. 语句块也叫循环体

    3. 表达式一直成立称为死循环

    4. break:跳出循环

    5. continue:结束本次循环,进入下次循环

    6. 结合else使用:循环正常退出,执行else后的语句块;非正常(break)退出,则不执行else语句块。

      i = 1
      
      while i <= 10:
      print(i)
      i += 1
      break
      else:
      print('结束')

python基础02—运算符与流程控制的更多相关文章

  1. java 基础one ---运算符and流程控制

    首先java这个了解下java的基础 首先java文件都是以.java结尾的  然后 他所有的内容都是有一个入口的就是放在了public static void main(String [] args ...

  2. python基础(3)---流程控制

    流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...

  3. Python基础(三)--流程控制之if、while、for,break与continue

    一.流程控制之if……else…… if语句是指编程语言中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一 if 条件1: 缩进的代码块 elif 条件2: 缩进的代码 ...

  4. Python基础:十一、流程控制(if语句、while循环)

    一.流程控制——if循环 1.第一种语法: if条件: #引号是将条件与结果分开 结果1 #四个空格,或者一个tab键,这个是告诉程序满足条件的话,运行这个结果 结果2 #如果条件是真(True)执行 ...

  5. python基础1--基本数据类型+流程控制

      一.基本数据类型 1.整型 int 就是整数   2.浮点型 float 就是小数     3.字符串 3.1.加了单引号.双引号.多引号的字符就认为是字符串 单引号和双引号没有什么区别,多引号用 ...

  6. python 基础 2.2 if流程控制(二)

    一. if  else   1.逻辑值(bool)包含了两个值: ----True:表示非空的值,比如:string ,tuple,list,set,dictonary,所有非空的序列. -----F ...

  7. python 基础 2.1 if 流程控制(一)

    一.if  else 1.if 语句     if expression:   //注意if后有冒号,必须有        statement(s)     //相对于if缩进4个空格 注:pytho ...

  8. 【python基础】第06回 运算符和流程控制 1

    本章内容概要 1.运算符 2.流程控制 本章内容详解 1.运算符 什么是运算符? 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是" ...

  9. Linux基础-shell脚本知识整理和脚本编写----------变量、运算符、流程控制、函数、计划任务(发送邮件)

    I:知识整理:变量.运算符.流程控制.函数.计划任务 变量 系统变量:set:显示所有变量                env:环境变量 常用系统变量: path pwd lang home his ...

随机推荐

  1. Texture Filter

    [Texture Filter] 我们的纹理是要贴到三维图形表面的,而三维图形上的pixel中心和纹理上的texel中心并不一至(pixel不一定对应texture上的采样中心texel),大小也不一 ...

  2. spring 项目返回406

    406 The resource identified by this request is only capable of generating responses with characteris ...

  3. IP协议、ARP协议等之温故知新

    今天才知道: 1.IP协议的固定部分长度为20字节.(貌似有一家运维工程师面试我的时候,问过我这个问题呢.) 2.IP数据包首部中的协议?? 答:协议:占8位,指出此数据报携带的数据使用何种协议以便目 ...

  4. 认识Filter

    1). Filter 是什么 ? ①. JavaWEB 的一个重要组件, 可以对发送到 Servlet 的请求进行拦截, 并对响应也进行拦截. ②. Filter 是实现了 Filter 接口的 Ja ...

  5. 互联网+大数据解决方案(ppt)

    from: 互联网+大数据解决方案(ppt) 导读:大数据(bigdata),或称巨量资料,指的是所涉及的资料量规模巨大到无法透过目前主流软件工具,在合理时间内达到撷取.管理.处理.并整理成为帮助企业 ...

  6. Robot Framework - 常用断言讲解

    RobotFramework带有丰富的系统关键,使用时无需导入,直接使用,为写自动化用例带来了极大的方便:不能停留在知道或者是会得程度,只有熟练使用各关键字,才能提升自动化用例的写作效率. 下面将逐个 ...

  7. LightOJ 1248 Dice (III) (水题,期望DP)

    题意:给出一个n面的色子,问看到每个面的投掷次数期望是多少. 析:这个题很水啊,就是他解释样例解释的太...我鄙视他,,,,, dp[i] 表示 已经看到 i 面的期望是多少,然后两种选择一种是看到新 ...

  8. C++中的Trivial 、POD、non-POD和Standard Layout概念

    POD types non-POD types Standard Layout types A Formal Definition Informally, a standard layout clas ...

  9. MySQL性能调优与架构设计——第6章 MySQL Server 性能的相关因素

    第6章 MySQL Server 性能的相关因素 前言 大部分人都一致认为一个数据库应用系统(这里的数据库应用系统概指所有使用数据库的系统)的性能瓶颈最容易出现在数据的操作方面,而数据库应用系统的大部 ...

  10. Vue 动态传值,Get传值

    Vue 路由get传值1.动态传值 1.1需要在路由配置时指定参数: {component:'/home/:id'} 1.2在routerlink中指定格式:<router-link :to=& ...