• 变量和赋值语句
      • 在同一条赋值语句中可以引入多个变量
        • 交换变量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. bzoj2818: Gcd懵逼乌斯反演

    由于是单组数据,强行不分块O(n)过 线性筛部分非常神奇,用了一个奇妙的推导(懒得写了) #include <bits/stdc++.h> using namespace std; ],f ...

  2. 为什么会出现lvs+nginx

    一.ngix(应用层 网络七层负载均衡) 1.异步转发,请求数据和相应数据都要经过ngix,ngix和客户端建立连接 2.轮询所有的tomcat服务器,保证请求成功或者最后一台tomcat服务器也请求 ...

  3. CI模板中如何引入模板

    <?php $this->load->view('index/head.html') ?>

  4. React-redux及异步获取数据20分钟快速入门

    一, 写在前面 1. 前面我写过一个vuex10分钟入门 传送门 2. React-redux网上有好多文档,又臭又长,明明很简单的问题,硬是让新人更晕了~, 我写这个文章的目的是让新人在20分钟之内 ...

  5. [转]AngularJS Cookies Example

    AngularJS Cookies Example AngularJS 提供了很好的 $cookie 和 $cookieStore API 用来处理 cookies . 这两个服务都能够很好的发挥HT ...

  6. phpstorm类似sublime ctrl + alt +down多光标下移

    http://blog.jetbrains.com/phpstorm/2014/03/working-with-multiple-selection-in-phpstorm-8-eap/ 评论有一条回 ...

  7. .NET Core 1.0 CentOS7 尝试(三、使用VSCode创建一个Web应用)

    参考地址:https://docs.asp.net/en/latest/tutorials/your-first-mac-aspnet.html 一.使用VSCode创建一个目录FirstWebApp ...

  8. spark常用参数

    val conf = new SparkConf().setAppName("WordCount_groupBy").setMaster("local") // ...

  9. 88E1111

    千兆网phy芯片 支持GMII,RGMII,MII等接口 具备4个GMII时钟模式 支持自适应功能 超低功耗模式 功率降低模式 MDC/MDIO/TWSI接口 支持10Mb/s,100Mb/s,100 ...

  10. HDU 1729 Stone Game 石头游戏 (Nim, sg函数)

    题意: 有n个盒子,每个盒子可以放一定量的石头,盒子中可能已经有了部分石头.假设石头无限,每次可以往任意一个盒子中放石头,可以加的数量不得超过该盒中已有石头数量的平方k^2,即至少放1个,至多放k^2 ...