加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python基础—03-运算符与分支结构

发布时间:2020-12-17 00:22:52 所属栏目:Python 来源:网络整理
导读:h1 id="运算符与分支结构" data-source-line="1"运算符与分支结构 h3 id="运算符" data-source-line="3"运算符 ul data-source-line="5" 赋值运算符 用'='表示,左边只能是变量 算术运算符 +、-、*:加、减、乘 /:除法运算,结果是浮点型 //:除法运算,结

<h1 id="运算符与分支结构" data-source-line="1">运算符与分支结构
<h3 id="运算符" data-source-line="3">运算符
<ul data-source-line="5">

  • 赋值运算符

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

    • +、-、*:加、减、乘
    • /:除法运算,结果是浮点型
    • //:除法运算,结果是整型
    • %:求余
    • **:求幂
  • 复合运算符

    • +=、-=、=、/=、//=、%=、*=
    • 示例:
      a = a+b 等价于 a += b
  • 关系运算符

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

    • 与(and):两边的表达式同时为真,结果才为真

      a = 20 (a >= 0 a <= 100 (0 <= a <= 100= 10 (b%3==0 b%5==0)
    • 或(or):两边的表达式一个为真,结果就为真

      year = int(input(((year%4==0 year%100!=0) (year%400==0))
    • 非(not):用于取反表达式,真变假,假变真

      • 逻辑非经常伴随着隐式类型转换
      • 很多时候是为简化表达式的书写
  • 成员运算符

    • in、not in:判断一个变量是否在/不在另一个变量中

    • 一般用在字符串、列表、元组、集合、字典等成员的判断

    • 示例:

      lt = [1,2,3(,8 (,8 d = {<span style="color: #800000">'<span style="color: #800000">name<span style="color: #800000">': <span style="color: #800000">'<span style="color: #800000">xiaoming<span style="color: #800000">',<span style="color: #800000">'<span style="color: #800000">age<span style="color: #800000">': 20<span style="color: #000000">}
      <span style="color: #008000">#
      <span style="color: #008000"> 字典:判断键是否存在

      <span style="color: #0000ff">print
      (<span style="color: #800000">'<span style="color: #800000">name<span style="color: #800000">' <span style="color: #0000ff">in d)

  • 位运算符(了解)

    • &:按位与,对应的数据位同时为1,结果才为1

      & -----------
    • |:按位或,对应的数据位一个为1,结果就为1

    • ^:按位异或,对应的数据位相同时值为0,不同时值为1

    • ~:按位取反,对应的数据位,1变0,0变1

    • <<:按位左移,左移一位相当于乘2

    • 》:按位右移,右移一位相当于除2

  • 优先级与结合性

    • python语法中没有明确规定运算符的优先级与结合性,即使提供了明确说明也不一定能记住

    • 建议:使用时不用刻意记录运算符的优先级与结合性问题,实在不行添加()即可解决

    • 说明:

      • 按照程序的执行流程,程序可以分为三种结构:顺序结构、分支结构、循环结构
      • 顺序结构:就是代码按照从上到下的顺序依次执行,没有语法要求
      • 代码层次:python中代码块不适于大括号区分,而是使用相同缩进来完成
    • 分支结构(if-else)

      • 格式1:适合于选择执行的情况

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

      • 格式2:适合于解决生活中非此即彼的问题

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

      • 格式3:适合于解决生活中多种选择的问题
      1. elif的个数没有限制
      2. else可以省略不写
      3. 每一部分的语句块都不可能同时执行,最多执行一个

      字符串

      s = s = * 2 s = + <span style="color: #008000">#<span style="color: #008000"> 提取单个字符,通过下表提取<span style="color: #008000">

      <span style="color: #008000"> 从开头提取,下表从0开始

      <span style="color: #0000ff">print<span style="color: #000000">(s[0])
      <span style="color: #008000">#<span style="color: #008000"> 从结尾提取,下表从-1开始
      <span style="color: #0000ff">print(s[-1<span style="color: #000000">])

      <span style="color: #008000">#<span style="color: #008000"> 切片:s[开始:结束:步进]
      s = <span style="color: #800000">'<span style="color: #800000">abcdefg<span style="color: #800000">'
      <span style="color: #008000">#<span style="color: #008000"> 包括起始下表,不包括结束下表,默认的步进值为1
      <span style="color: #0000ff">print(s[0:3<span style="color: #000000">])
      <span style="color: #0000ff">print(s[2:4<span style="color: #000000">])
      <span style="color: #008000">#<span style="color: #008000"> 当一边没有指定就提取到该边的边界
      <span style="color: #0000ff">print(s[:4<span style="color: #000000">])
      <span style="color: #0000ff">print(s[3<span style="color: #000000">:])
      <span style="color: #0000ff">print(s[1:-2<span style="color: #000000">])
      <span style="color: #0000ff">print(s[-4<span style="color: #000000">:])
      <span style="color: #0000ff">print<span style="color: #000000">(s[:])
      <span style="color: #0000ff">print(s[::2<span style="color: #000000">])
      <span style="color: #008000">#<span style="color: #008000"> 倒序提取
      <span style="color: #0000ff">print(s[::])-1

      <span style="color: #008000">#<span style="color: #008000"> 格式化

      <span style="color: #008000">#<span style="color: #008000"> %s:字符串<span style="color: #008000">

      <span style="color: #008000"> %d:整数<span style="color: #008000">

      <span style="color: #008000"> %f:小数<span style="color: #008000">

      <span style="color: #008000"> %c:单个字符

      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">俺叫%s,暗恋%s,她今年%d岁了<span style="color: #800000">' %<span style="color: #000000"> (name,like,age))

      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">我是{},今年{},暗恋{}<span style="color: #800000">'<span style="color: #000000">.format(name,age,like))
      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">我是{2},今年{1},暗恋{0}<span style="color: #800000">'<span style="color: #000000">.format(name,like))
      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">我是{nm},今年{a},暗恋{l}<span style="color: #800000">'.format(nm=name,a=age,l=like))

    • 列表

      lt = [1,3,4,5<span style="color: #0000ff">print<span style="color: #000000">(lt[0])
      <span style="color: #0000ff">print(lt[-1<span style="color: #000000">])
      <span style="color: #0000ff">print(lt[1:4<span style="color: #000000">])
      <span style="color: #0000ff">print<span style="color: #000000">(len(lt))

      <span style="color: #008000">#<span style="color: #008000"> 修改
      lt[0] = 100

      <span style="color: #008000">#<span style="color: #008000"> 添加的对象在列表是一个元素
      lt.append(250<span style="color: #000000">)
      <span style="color: #008000">#<span style="color: #008000"> lt.append(['hello','world'])<span style="color: #008000">

      <span style="color: #008000"> 将可迭代对象的每个元素挨个添加

      lt.extend([<span style="color: #800000">'<span style="color: #800000">hello<span style="color: #800000">',<span style="color: #800000">'<span style="color: #800000">world<span style="color: #800000">'<span style="color: #000000">])

      <span style="color: #008000">#<span style="color: #008000"> 在指定位置插入元素
      lt.insert(3,<span style="color: #800000">'<span style="color: #800000">good<span style="color: #800000">'<span style="color: #000000">)

      <span style="color: #008000">#<span style="color: #008000"> 根据下表删除元素
      <span style="color: #0000ff">del<span style="color: #000000"> lt[0]
      <span style="color: #008000">#<span style="color: #008000"> 根据值删除元素
      lt.remove(250<span style="color: #000000">)

      <span style="color: #008000">#<span style="color: #008000"> 删除并返回指定下表的元素,默认最后一个元素
      last = lt.pop(4<span style="color: #000000">)
      <span style="color: #0000ff">print<span style="color: #000000">(last)

      <span style="color: #008000">#<span style="color: #008000"> 查询索引号
      lt = [1,1,1<span style="color: #000000">]
      <span style="color: #0000ff">print(lt.index(1<span style="color: #000000">))
      <span style="color: #008000">#<span style="color: #008000"> 逆序<span style="color: #008000">

      <span style="color: #008000"> lt.reverse()<span style="color: #008000">

      <span style="color: #008000"> 统计指定对象出现的次数

      <span style="color: #0000ff">print(lt.count(1<span style="color: #000000">))
      lt = [1,5,7,3<span style="color: #000000">]
      <span style="color: #008000">#<span style="color: #008000"> 排序,默认升序排序,可以通过reverse指定是否倒序排序
      lt.sort(reverse=<span style="color: #000000">True)
      <span style="color: #0000ff">print(lt)

      说明:美国信息交换标准代码,其实就是给每个字符使用一个整数表示
    • 函数:
      • ord:根据字符获取ASCII码
      • chr:根据ASCII码转换成字符

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读