运算符与分支结构

运算符

  • 赋值运算符

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

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

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

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

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

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

      # 判断闰年
      year = int(input('请输入一个年份:'))
      print((year%4==0 and year%100!=0) or (year%400==0))
    • 非(not):用于取反表达式,真变假,假变真

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

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

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

    • 示例:

      lt = [1, 2, 3]
      print('in:', 8 in lt)
      print('not in:', 8 not in lt) d = {'name': 'xiaoming', 'age': 20}
      # 字典:判断键是否存在
      print('name' in d)
  • 位运算符(了解)

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

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

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

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

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

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

  • 优先级与结合性

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

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

流程控制

  • 说明:

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

    • 格式1:适合于选择执行的情况
    if 表达式:
    语句块

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

    • 格式2:适合于解决生活中非此即彼的问题
    if 表达式:
    语句块1
    else:
    语句块2

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

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

数据类型

  • 字符串

    s = 'hello'
    # 字符串的重叠
    s = 'hello' * 2
    # 字符串的拼接
    s = 'hello' + 'world'
    print(s)
    # 统计字符个数
    print(len(s)) # 提取单个字符,通过下表提取
    # 从开头提取,下表从0开始
    print(s[0])
    # 从结尾提取,下表从-1开始
    print(s[-1]) # 切片:s[开始:结束:步进]
    s = 'abcdefg'
    # 包括起始下表,不包括结束下表,默认的步进值为1
    print(s[0:3])
    print(s[2:4])
    # 当一边没有指定就提取到该边的边界
    print(s[:4])
    print(s[3:])
    print(s[1:-2])
    print(s[-4:])
    print(s[:])
    print(s[::2])
    # 倒序提取
    print(s[::])-1 # 格式化 # %s:字符串
    # %d:整数
    # %f:小数
    # %c:单个字符
    print('俺叫%s,暗恋%s,她今年%d岁了' % (name, like, age)) print('我是{},今年{},暗恋{}'.format(name, age, like))
    print('我是{2},今年{1},暗恋{0}'.format(name, age, like))
    print('我是{nm},今年{a},暗恋{l}'.format(nm=name, a=age, l=like))
  • 列表

    lt = [1, 2, 3, 4, 5]
    
    print(lt[0])
    print(lt[-1])
    print(lt[1:4])
    print(len(lt)) # 修改
    lt[0] = 100 # 添加的对象在列表是一个元素
    lt.append(250)
    # lt.append(['hello', 'world'])
    # 将可迭代对象的每个元素挨个添加
    lt.extend(['hello', 'world']) # 在指定位置插入元素
    lt.insert(3, 'good') # 根据下表删除元素
    del lt[0]
    # 根据值删除元素
    lt.remove(250) # 删除并返回指定下表的元素,默认最后一个元素
    last = lt.pop(4)
    print(last) # 查询索引号
    lt = [1, 2, 3, 1, 1]
    print(lt.index(1))
    # 逆序
    # lt.reverse()
    # 统计指定对象出现的次数
    print(lt.count(1))
    lt = [1, 5, 7, 3]
    # 排序,默认升序排序,可以通过reverse指定是否倒序排序
    lt.sort(reverse=True)
    print(lt)

ASCII

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

Python基础—03-运算符与分支结构的更多相关文章

  1. python 运算符与分支结构

    运算符与分支结构 运算符 赋值运算符 用'='表示,左边只能是变量 算术运算符 +.-.*:加.减.乘 /:除法运算,结果是浮点型 //:除法运算,结果是整型 %:求余 **:求幂 复合运算符 +=. ...

  2. python_ 运算符与分支结构

    # 运算符与分支结构 ### 运算符 - 赋值运算符 - 用'='表示,左边只能是变量. - 算术运算符 - +.-.*:加.减.乘 - /:除法运算,结果是浮点数 - //:除法运算,结果是整数 - ...

  3. Python 基础 常用运算符

    Python 基础 常用运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算术运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算. 今天我们暂只学习 算术运算. ...

  4. java 基础 03 运算符 分支结构 循环结构

    今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...

  5. java 基础 02 数据类型、运算符、分支结构

    内容: (1)数据类型 (2)运算符 (3)分支结构 1.数据类型 java语言中的基本数据类型:byte.short.int.long.float.double.boolean.char. 1.1布 ...

  6. Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)

    一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...

  7. Java入门(1) —— 变量、运算符、分支结构和程序员思维的理解

    1.计算机语言的发展史: 机器语言:机器语言是指一台计算机全部的指令集合. 汇编语言:为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母.符号串来替代一个特定的指令的二进制 ...

  8. python基础02—运算符与流程控制

    运算符与流程控制 运算符 赋值运算 用'='表示,'='的左边只能是变量 算术运算 +.-.*:加.减.乘 /:除法运算,运算结果为浮点数 //:除法运算,运算结果为整数(商) %:求余 **:求幂 ...

  9. 05 java 基础:运算符、程序结构

    赋值运算符 : = 三元运算符 : ? 算术运算符 : +.- .*./.% 自增自减运算符: ++.-- 关系运算符:>.<.==.>=.<=.!= 逻辑运算符 :& ...

随机推荐

  1. C#编程的几个概念

    编译器(计算机) 开发人员 指令&对象 C# 有一批既定的指令, 关键字,方法.函数 变量.控件 通过指令去操作对象. 1. 熟记指令 2. 指令-对象的可操作关系 3. 合乎语法规范

  2. SpringSecurity 3.2入门(4)登录密码加密

    密码admin 进行MD5 32位加密为21232F297A57A5A743894A0E4A801FC3 增加spring-security.xml文件配置如下 <!-- 认证管理器,配置Spr ...

  3. JavaScript数据类型 数据转换

    JavaScript数据类型分为两种:原始类型和对象类型,原始类型有:number(数字).string(文本).boolean(布尔值).null(空).undefined(未定义):对象类型有:A ...

  4. WPF MVVM 如何在ViewModel中操作View中的控件事件

    (在学习Wpf的时候,做一个小例子,想在TextBox改变后,检验合法性,并弹出提示.在找了很多贴后,发现这个小例子,抄袭过来,仅供参考. 最后也找到了适合自己例子的办法:在出发TextChanged ...

  5. 【学习笔记】HTML基础:列表、表格与媒体元素

    一.列表是信息资源的一种展现形式,它可以使信息结构化和条理化,并以列表的样式显示出来,以便浏览者能够快速的获取相应的信息. 1.无需列表 <ul> <li>第一项</li ...

  6. CRM——权限

    一.引入权限组件 1.引入权限组件rbac 拷贝之前写好的rbac应用到CRM_demo项目下. 在settings中注册rbac的app: INSTALLED_APPS = [ 'django.co ...

  7. scss-!default默认变量

    在变量赋值之前, 利用!default为变量指定默认值. 也就是说,如果在此之前变量已经赋值,那就不使用默认值,如果没有赋值,则使用默认值. 代码实例如下: $content: "antzo ...

  8. SQLAlchemy的使用---外键ForeignKey数据增删改查

    # 添加数据 from sqlalchemy.orm import sessionmaker from create_table_ForeignKey import engine, Student, ...

  9. caffe-windows之网络描述文件和参数配置文件注释(mnist例程)

    caffe-windows之网络描述文件和参数配置文件注释(mnist例程) lenet_solver.prototxt:在训练和测试时涉及到一些参数配置,训练超参数文件 <-----lenet ...

  10. Zepto结合Swiper的选项卡

    我们昨天说了关于Angular的选项卡,那今天就说一下Swiper的选项卡吧! 今天的选项卡是Zepto结合Swiper的选项卡,咱么明天再说纯纯的Swiper的吧! 既然是关于Zepto和Swipe ...