• 变量和赋值语句
      • 在同一条赋值语句中可以引入多个变量
        • 交换变量a 和b 的值
          • a,b = b,a

      • Python换行可以使用转义字符\,下一行的缩进量相同
        • )\

    • 帮助文档
      • help()

    • 控制语句
      • 条件式语句
        • 如果只有一条语句,可以不用换行
          • :print('smaller')

        • 模块测试语句
          • if __name__ == "__main__":

            main()

    • 字符串及其运算
      • 运算符
        • ] #Retruns "eat"

      • 格式化字符串
        • 格式
          • <formtt string> % <datum>

        • 指定字符宽度以及左右对齐
            • print( "%6s" % "four" ) #右对齐

              print( "%-6s" % "four" ) #左对齐

            • ):

              print( "%-3d%12d" % ( exponent, 10 ** exponent ) )

        • 浮点数
          • %<field width>.<precision>f

          • precision 为小数点的精度
          • 示例
            • print( "Your salary is $%0.2f." % salary )

    • 对象和方法的调用
      • 显示某一对象的所有方法
        • 在 IDLE 中使用 dir 命令
          • 示例
            • dir(str)

    • 内建Python集合及操作
      • 对集合应用模式匹配
        • 模式匹配将一个结构赋值给另一个形式完全相同的结构
          • rgTuple = ( ( <r>, <g>, <b> ), <string> )

            ( ( r, g, b ), hexString ) = rgTuple

    • 编写新的函数
      • 递归函数
        • 运行示例
          • def ourSum( lower, upper, margin = 0 ):

            """Returns the sum of the numbers from lower to upper,

            and outputs a trace of the arguements and return values

            on each call."""

            blanks = " " * margin

            print( blanks,str(lower)+ str(upper) )

            if lower > upper:

            print( blanks, 0 )

            else:

            , upper, margin + 4 )

            print( blanks,result )

            return result

            if __name__ == "__main__":

            )

          • 输出
      • 嵌套函数的定义
        • 示例
          • def factorial(n):

            """ Returns the factorial of n. """

            def recurse(n, product):

            : return product

            , n * product)

            )

      • 高阶函数
        • 高阶函数接收一个函数作为参数,并且以某种方式应用该函数
        • map 函数
          • 输入:一个函数和一个可迭代对象
          • 输出:对可迭代对象的每一项应用参数函数,得到一个新的可迭代对象,并返回
          • 示例
            • ]

              newList = list( map( str, oldList ) ) #Returns ['1', '2', '3', '4']

        • filter 函数
          • 输入:一个布尔函数的一个可迭代对象
          • 功能:对可迭代对象的每一项应用布尔函数,如果其为真,则将其加入到新的可迭代对象中。
          • 示例
            • def isPositive( number ):

              """判断是否为正数"""

              : return True

              else: return False

              ]

              newList = list( filter( isPositive, oldList ) ) #[2,3,5,1000]

      • 使用 lambda 创建匿名函数
        • lambda <argument list> : <expression>

        • 示例
          • , oldList ) )

        • functools.reduce 高阶函数
          • 功能:通过应用带有两个参数的函数来将一个可迭代对象转换为单个的值,该函数的两个参数是下一项和前一次应用该函数的结果
          • 示例
            • import functools

              ) )  #120

    • 捕获异常
      • 确保用户输入整数
        • def safeIntegerInput( prompt ):

          """Pormpts the user for an integer nad returns the

          integer if it is well-formed. Otherwise, prints an

          error message and repeats this process."""

          inputString = input( prompt )

          try:

          number = int( inputString )

          return number

          except ValueError:

          print( "Please Enter in the correct number format:", inputString )

          return safeIntegerInput( prompt )

    • 文件及其操作
      • 使用 pickle 读写对象
        • 可以直接对对象进行储存与读取操作
        • 示例
          • import pickle

            #写入文件

            ] ]

            fileObj = open( "items.dat", "wb" )

            for item in lyst:

            pickle.dump( item, fileObj )

            fileObj.close()

            #读取文件

            lyst = list()

            fileObj = open( "items.dat", "rb" )

            while True:

            try:

            item = pickle.load( fileObj )

            lyst.append( item )

            except EOFError:

            fileObj.close()

            break

            print( lyst )

    • 创建新的类
      • 所有的 Python 类都位于层级之中, object 在这个层级的根部
      • 示例
        • class Counter(object):

          """Models a counter"""

          # Class variable

          # Constructor

          def __init__(self):

          """Set up the counter."""

          self.reset()

          #Mutator methods

          def reset(self):

          """Sets the counter to 0. """

          ):

          """Adds amount to the counter."""

          self._value += amount

          ):

          """Subtracts amount from the counter"""

          self._value -= amount

          #Acessor methods

          def getValue(self):

          """Return the counter's value."""

          return str( self._value )

          def __str__(self):

          """Returns the string representation of the counter."""

          return str(self._value)

          def __eq__(self, other):

          """Returns True if self equals other or False otherwise."""

          if self is other: return True

          if type(self) != type(other): return False

          return self._value == other._value

        • 类变量 instances
          • 记录了所创建的 Counter 对象的数目
          • 除了最初的赋值以外,在其他时候,类变量必须有一个类名作为其前缀
        • 实例变量 self._value
          • 加下划线的目的是为了便于区别
        • __str__
          • 覆盖了 object 中的 str 函数
        • __eq__
          • 相当于 ==

数据结构( Pyhon 语言描述 ) — — 第1章:Python编程基础的更多相关文章

  1. 数据结构( Pyhon 语言描述 ) — —第10章:树

    树的概览 树是层级式的集合 树中最顶端的节点叫做根 个或多个后继(子节点). 没有子节点的节点叫做叶子节点 拥有子节点的节点叫做内部节点 ,其子节点位于层级1,依次类推.一个空树的层级为 -1 树的术 ...

  2. 数据结构( Pyhon 语言描述 ) — — 第5章:接口、实现和多态

    接口 接口是软件资源用户可用的一组操作 接口中的内容是函数头和方法头,以及它们的文档 设计良好的软件系统会将接口与其实现分隔开来 多态 多态是在两个或多个类的实现中使用相同的运算符号.函数名或方法.多 ...

  3. 数据结构( Pyhon 语言描述 ) — —第9章:列表

    概念 列表是一个线性的集合,允许用户在任意位置插入.删除.访问和替换元素 使用列表 基于索引的操作 基本操作 数组与列表的区别 数组是一种具体的数据结构,拥有基于单个的物理内存块的一种特定的,不变的实 ...

  4. 数据结构( Pyhon 语言描述 ) — — 第7章:栈

    栈概览 栈是线性集合,遵从后进先出原则( Last - in first - out , LIFO )原则 栈常用的操作包括压入( push ) 和弹出( pop ) 栈的应用 将中缀表达式转换为后缀 ...

  5. 数据结构( Pyhon 语言描述 ) — — 第4章:数据和链表结构

    数据结构是表示一个集合中包含的数据的一个对象 数组数据结构 数组是一个数据结构 支持按照位置对某一项的随机访问,且这种访问的时间是常数 在创建数组时,给定了用于存储数据的位置的一个数目,并且数组的长度 ...

  6. 数据结构( Pyhon 语言描述 ) — —第11章:集和字典

    使用集 集是没有特定顺序的项的一个集合,集中的项中唯一的 集上可以执行的操作 返回集中项的数目 测试集是否为空 向集中添加一项 从集中删除一项 测试给定的项是否在集中 获取两个集的并集 获取两个集的交 ...

  7. 数据结构( Pyhon 语言描述 ) — — 第6章:继承和抽象类

    继承 新的类通过继承可以获得已有类的所有特性和行为 继承允许两个类(子类和超类)之间共享数据和方法 可以复用已有的代码,从而消除冗余性 使得软件系统的维护和验证变得简单 子类通过修改自己的方法或者添加 ...

  8. 数据结构( Pyhon 语言描述 ) — — 第3章:搜索、排序和复杂度分析

    评估算法的性能 评价标准 正确性 可读性和易维护性 运行时间性能 空间性能(内存) 度量算法的运行时间 示例 """ Print the running times fo ...

  9. 数据结构( Pyhon 语言描述 ) — — 第2章:集合概览

    集合类型 定义 个或多个其他对象的对象.集合拥有访问对象.插入对象.删除对象.确定集合大小以及遍历或访问集合的对象的操作 分类 根据组织方式进行 线性集合 线性集合按照位置排列其项,除了第一项,每一项 ...

随机推荐

  1. [題解]hdu_6412公共子序列

    https://blog.csdn.net/nka_kun/article/details/81902421 #include<bits/stdc++.h> #define ll long ...

  2. DRF教程3-类视图

    Rewriting our API using class-based views 使用类视图重写root views,只需要一点点重构. from django.http import Http40 ...

  3. Linux (一)

    Linux目录结构 / :根目录.位于分层文件系统的最顶层,可以说它包含了所有的目录和文件 /bin :系统可执行目录 /sbin :系统管理员的可执行文件 /boot :存放用于启动linux系统的 ...

  4. flask_之参数传递

    参数篇 request接收数据 request对象 method:当前请求方法(POST,GET等) url:当前链接地址 path:当前链接的路径 environ:潜在的WSGI环境 headers ...

  5. Codeforces 1132E(转化+dp)

    要点 假设第i个最后总共选的值为ci,不妨把它分成两部分:\[c_i=cnt'_i*L+q_i\]\[L=840,\ 0<=q_i<L\]又可以写成:\[c_i=cnt_1*i+cnt_2 ...

  6. CSS 条纹背景深入

    一.水平渐变 实现水平条纹很简单 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  7. javaoo封装

  8. LessCss学习笔记

    一.入门 1.LESSCSS是什么? LESSCSS是一种动态样式语言,属于CSS预处理语言的一种,它使用类似CSS的语法,为CSS的赋予了动态语言的特性,如变量.继承.运算.函数等,更方便CSS的编 ...

  9. js实现屏幕自适应局部

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  10. 浅析ES6中的iterator

    1.iterator迭代器必须保证其遍历终止条件可控,否则会形成死循环demo: //会用到iterator接口的场合 //1.for...of循环 //2. ...解构表达式 const obj = ...