Python核心编程——笔记(二)

第五章 数字

  1. 数字,Python支持多种数字类型:整型、长整型、布尔型、双精度浮点型、十进制浮点型和复数型

  2. 整型

    1. 布尔型,该类型只有False和True两个值
    2. 标准整型,取值范围是-231到231-1
    3. 长整型,与机器支持的虚拟内存大小有关,能轻松表达很大的整型。在整型值后面加上L,表示这个整型是长整型
  3. 双精度浮点型

    • 类似与C的double类型,可直接十进制或科学计数法表示
    • 浮点型值通常有一个小数点和一个可选的后缀e(表示科学计数法)
  4. 复数

    • 复数由实数部分和虚数部分构成。虚数不能单独存在,总是和一个值为0.0的实数部分一起来构成一个复数
    • 虚数语法:real+imagej
    • conjugate(),返回该复数的共轭复数对象
  5. 操作符

    1. 混合模式操作符,+

      • 当两个相加的对象属于不同类型,系统会自动将两个对象转换成同一类型再相加
    2. 标准类型操作符(见第4章第5节)

    3. 算数操作符

      算数操作符功能
      +a结果符号不变
      -a结果符号取负
      a + ba 加 b
      a - ba 减 b
      a ** ba 的 b次方
      a * ba 乘 b
      a / ba 除 b
      a // ba 地板除 b,舍去结果小数部分
      a % ba 取余 b
    4. 位操作符(只适用于整型)

      位操作符功能
      ~num对位的每一位取反,结果为-(num + 1)
      num1 << num2num1 左移 num2 位
      num1 >> num2num1 右移 num2 位
      num1 & num2num1 与 num2 按位与
      num1 |num2num1 与 num2 按位或
      num1 ^ num2num1 异位 num2
  6. 内建函数与工厂函数

    1. 标准类型函数(见第4章第6节)

    2. 数字类型函数

      类(工厂函数)操作
      bool(obj)返回obj对象的布尔值
      int(obj,base=10)返回一个字符串或数值对象的整型
      long(obj,base=10)返回一个字符串或数值对象的长整型
      float(obj)返回一个字符串或数据对象的浮点型
      complex(str) or complex(real, inag=0.0)返回一个字符串的复数表示
      函数功能
      abs(num)返回num的绝对值
      coerce(num1, num2)将num1和num2转换为同一类型,然后以一个元组的形式返回
      divmod(num1, num2)除法-取余运算的结合,返回(num1/num2,num1%num2)
      pow(num1, num2, mod=1)取num1的num2次方,如果提供mod参数,则计算结果再对mod进行取余计算
      round(flt,ndig=1)接受一个浮点型flt并对其四舍五入,保存ndig位小数

      在这里插入图片描述在这里插入图片描述 3. 仅用于整型的函数

      函数操作
      hex(num)将数字转换成十六进制数并以字符串形式返回
      oct(num)将数字转换成八进制并以字符串形式返回
      chr(num)将ASCII值的数字转换成ASCII字符,范围只有0~255
      ord(char)接受一个ASCII或Unicode字符,返回相应的ASCII值或Unicode值
      unichar(num)接受Unicode码值,返回对应的Unicode字符
  7. 其他数字类型

    • 布尔值
    • 十进制浮点型
  8. 相关模块

    模块介绍
    decimal十进制浮点运算类
    array高效数值数组
    math/cmath常规数学运算在math模块,复数运算在cmath模块
    operator数组操作符的函数实现
    random多种伪随机数生成器
    • random模块
      • randint(),两个整型参数,返回二者之间的随机整型
      • randrange(),接受和range()函数一样的参数,随机返回range()结果的一项
      • uniform(),返回两者之间的随机浮点型
      • random(),随机返回0~1的小数
      • choice(),随机返回给定序列的一个元素

第六章 序列:字符串、列表和元组

  1. 序列

    • 标准类型操作符

    • 序列类型操作符

      序列操作符作用
      seq[ind]获得下标为ind的元素
      seq[ind1:ind2]获得下标从ind1到ind2间的元素集合
      seq[::ind]ind不为0,负号表示反转序列,数字代表隔ind个取一个元素
      seq*expr序列重复expr次
      seq1+seq2连接序列seq1到seq2
      obj in seq判断obj元素是否包含在seq中
      obj not in swq判断obj元素是否不包含在seq中
      函数含义
      list(iter)把可迭代对象转换为列表
      str(obj)把obj对象转换成字符串
      unicode(obj)把对象转换成unicode字符串
      basestring()抽象工厂函数,为str和Unicode函数提供父类
      tuple(iter)把一个可迭代对象转换成一个元组对象
      enumerate(iter)接受一个可迭代对象作为参数,返回一个enumerate对象
      len(seq)返回seq的长度
      max(iter, key=None) or max(arg0,arg1…,key=None)返回iter或(arg0,arg1…)中的最大值。如果指定key值,则key是一个可以传给sort()方法的,用于比较回调函数
      min(iter, key=None) or max(arg0,arg1…,key=None)返回iter或(arg0,arg1…)中的最小值。如果指定key值,则key是一个可以传给sort()方法的,用于比较回调函数
      reversed(seq)接受一个序列作为参数,返回一个以逆序访问的迭代器
      sorted(iter,func=None,key=None,reverse=False)接受一个可迭代对象作为参数,返回一个有序的列表
      sum(seq,init=0)返回seq和可选参数init的总和
      zip([it0, it1, …inN])将对象中对应的元素打包成一个个元组,返回由这些元组组成的列表

      在这里插入图片描述

  2. 字符串的创建、赋值、访问

  3. 字符串和操作符

    1. 标准类型操作符
    2. 序列操作符切片
  4. 只适用于字符串的操作符

    格式化转换方式
    %c转换成字符(ASCII码值, 或者长度为1的字符串)
    %r优先用repr()函数进行字符串转换
    %s优先用str()函数进行字符串转换
    %d / %i转成有符号十进制
    %u转成无符号十进制
    %o转成无符号八进制
    %x / %X转成无符号十六进制
    %e / %E转成科学计数法
    %f / %F转成浮点数
    %%输出%
  5. 内建函数

  6. 字符串内建函数

  7. 字符串的独特特性

    1. 特殊字符串和控制字符

      转义字符说明
      \0空字符Null
      \a响铃字符
      \b退格
      \t横向制表符
      \n换行
      \v纵向制表符
      \f换页
      \r回车
      \e转义
      \‘’双引号
      \’单引号
      \\反斜杠
    2. 三引号:单引号或双引号用来定义字符串,三引号则用来定义多行字符串

  8. Unicode

    • 计算机支持的多种语言的秘密武器
    • Unicode支持多种编码格式
  9. 相关模块

    • 字符串类型的相关模块

      模块描述
      string字符串操作相关函数和工具
      re正则表达式
      struct字符串和二进制之间的转换
      c/StringIO字符换缓冲对象
      base64Base16、32、64数据解码
      codecs解码器注册和基类
      crypt进行单方面加密
      difflib找出序列间的不同
      hashlib多种不同安全哈希算法和信息摘要算法的API
      hmaHMAC信息鉴权算法的Python实现
      md5RSA的MD5信息摘要鉴权
      rotor提供多平台的加解密服务
      shaNIAT的安全哈希算法SHA
      stringprep提供用于IP协议的Unicode字符串
      textwrap文本包装和填充
      unicodedataUnicode数据库
  10. 字符串关键点总结

    • 单引号或者双引号之间的字符数组或者连续的字符集合,就是字符串
    • 字符串格式化操作符(%)提供类似printf()的功能
    • 三引号
  11. 列表

    • 序列式的数据类型,可以通过下标或者切片操作来访问某一个或某一块连续的数据
    • 可以执行pop、empty、sort、reverse操作
    • 对单独或多个元素进行insert、update、remove操作
  12. 列表操作符

    1. 标准操作符
    2. 序列类型操作符
      • [] 和 [:]
      • in 和 not in
      • +、*
    3. 列表操作符(第八章)
  13. 内建函数

  14. 列表类型的内建函数

    列表函数作用
    list.append(obj)向列表中添加一个对象obj
    list.count(obj)返回一个对象obj在列表中出现的次数
    list.extend(seq)把序列seq的内容添加到列表中
    list.index(obj, i=0, j=len(list))返回list[k]==obj的值,并且k的范围在i<=k<j;否则会引发ValueError异常
    list.insert(index, obj)在索引量为index的位置插入对象obj
    list.pop(index=-1)删除并返回指定位置的对象,默认是最后一个
    list.remove(obj)从列表中删除对象obj
    list.reverse()反转列表
    list.sort(func=None, key=None, reverse=False)对列表进行排序
  15. 列表的特殊特性

    1. 用列表构建其他数据结构
      • 堆栈,后进后出的数据结构
      • 队列,先进先出的数据类型
  16. 元组

    • 与列表相近的一种容器类型;与列表不同的地方是,元组是一种不可变类型
  17. 元组操作符和内建函数

  18. 元组的特殊特性

    • 默认集合类型,函数返回的多对象都是元组类型
    • 字典的关键字
  19. 相关模块

  20. 拷贝Python对象、浅拷贝和深拷贝

    • 浅拷贝:新创建了一个类型跟原对象,其内容是原来对象元素的引用
    • 深拷贝/完全拷贝:创建一个新的容器对象,包含原有对象元素引用全新拷贝的引用——需要copy.deepcopy()函数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值