Python第二周小结

不知不觉已经正式学习接触Python两周了,第二周主要开始了Python内置数据结构的学习,包括从一开始的列表list,元组tuple,字符串string,再到后来的bytes, bytearray, 以及最后的集合set。这些数据结构可以说Python最为基础的几种类型,想要用Python写出漂亮的代码离不开对他们的熟练掌握与深刻理解。这几个结构各有各的特点,有一些共同点,比如有序性,可索引,可修改等一些性质,也有一些他们各自独有的特点,比如set中的元素不可重复,利用好它的这一特点就可以很好地对目标元素进行去重操作。另外,我们需要牢记每个结构自身最基本的特点,尤其不能弄混,并且对于每一次结构的输出类型要有特别清晰的判断,只有这些基本点了解清楚了,写代码的时候才不会冗余,不会出错,能够写的简练,易懂,给人耳目一新的感觉。

另外,在本周的数据结构学习过程中,我们首次接触到了时间复杂度的概念。对于每种类型进行操作的时间复杂度决定了我们代码的效率,因此,如何能够避免过高的时间复杂度是在我们能够写出代码,执行代码之后优化的第一要务。虽然在初学阶段,能不能写出代码,能不能顺利执行是我们的第一大关,但倘若我们使用了一般的方法实现了目标,那么下一步必然要审视自己的代码,进行效率审查。如果有明显的效率问题,它虽然是“一只能抓到老鼠的猫”,但未必是“一只真正的好猫”。而成为“一只真正的好猫”是我们提升竞争力的重要途径,我们只有在不断优化算法,不断提升效率,尽可能接近最优算法之后,才能自豪地说一句:“我不但能抓老鼠,我还是一个有效率的好猫。”

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/94033

(1)
guoxingxingguoxingxing
上一篇 2018-03-31 15:53
下一篇 2018-03-31 16:11

相关推荐

  • 树 非线性结构,每个元素可有多个前驱和后继 树是n(n>=0)个元素的集合,n=0时,称为空树,树只有一个特殊的没有前驱的元素,称为树的根root,树中除了根结点外,其余元素只能有一个前驱,可以有零个和多个后继,子树也有自己的根 结点:树中的数据元素 结点的度degree:结点拥有的子树的数目称为度,记作d(v)。树的度是树内各结点的度最大值 叶子结点…

    2018-04-16
  • 高阶函数

    高阶函数 Frist class object 函数在python中是一等公民 函数也是对象,可调用的对象 函数可以作为普通变量,参数,返回值等等 数学概念y=g(f(x)) 在数学和计算机科学中,高阶函数应当是至少满足下面一个条件的函数 接受一个或者多个函数作为参数 输出一个函数 计数器: def counter(base):def inc(step=1)…

    Python笔记 2018-04-23
  • 面向对象之魔术方法

    特殊属性 属性 含义 __name__ 类、函数、方法的名称 __module__ 类定义所在的模块名 __class__ 对象或类所属的类 __bases__ 类的基类的元组,顺序为它们在基类列表中出现的顺序 __doc__ 类、函数的文档字符串,若没定义则为None __mro__ 类的mro,方法查找顺序 __dict__ 类或实例的属性,可写的字典 …

    2018-05-20
  • 函数

    函数、参数、参数解构
    返回值、作用域
    递归函数
    匿名函数、
    生成器

    2018-04-16
  • Python高阶函数及装饰器

    First Class Object 函数在Python中是一等公民 函数也是对象,可调用的对象 函数可作为普通变量、参数、返回值等 高阶函数 数学定义:y=g(f(x)) 高阶函数需满足的条件,至少其一 接受一个或多个函数作为参数 输出一个函数 内建函数的高阶函数 排序:sorted(iterable[,key][,reverse]) 返回一个新列表,对一…

    2018-04-22
  • 解析式

    列表解析式和字典解析式 datetime模块 对日期,时间,时间戳的处理 datetime类 today()返回本地时区当前的datetime对象 now(tz=None)返回当前时间的datetime对象,时间到微秒,如果tz为None,返回和today()一样 utcnow()没有时区的当前时间 fromtimestamp(timestamp,tz=Zo…

    2018-04-09