万物之基础——对象

对象

对象(Objects)是python中数据的抽象,python中所有的数据均可以用对象或者是对象之间的关系来表示。每个对象均有标识符(identity)、类型(type)、值(value)

  1. 标识符。对象一旦创建,那么它的标识符就不会改变,可以把标识符看作对象在内存中的地址。 is 操作可以用来比较两个对象的标识符,函数 id() 用来返回对象标识符(python中返回对象在内存中的地址)。
  2. 类型。对象的类型也是不可变的,对象的类型决定了该对象支持的操作,另外也决定了该对象可能的值。 type() 函数返回一个对象的类型。
  3. 值。一些对象的值可以改变,我们叫它可变对象,字典和列表均属于可变对象;值不可改变的对象我们叫它不可变对象,数字、字符串、元组均属于不可变对象。

阅读全文

简单字典树(Trie)的实现

字典树介绍

我们经常会在网上输入一些单词,一般情况下,当我们输入几个字母时,输入框中会自动弹出以这些字母开头的单词供我们选择,用户体验非常好。

不过这种自动提示功能到底是怎么实现的呢?这就要用到我们的前缀树了,前缀树也叫字典树、Trie树。假如我们有一个简单的字典,里面包含以下几个单词:apps apple cook cookie cold,那么可以构建以下树:

简单的字典树

阅读全文

阅读神器 Kindle!

走进书的世界

小学初中家里没有读书的气氛,学校那边只会让读教课书,所以自己甚至都不知道除了教科书还有那么多各种类型的书。

高中本来应该接触到更多的书,可惜自己整日忙于完成无穷尽的学习任务,又一次丧失了读课外书的机会。

还好,大学自主时间很多,自己慢慢喜欢上了看书。不过也不是一上大学就喜欢上读书的,能喜欢上读书其实也很偶然吧。大一的自己其实和高中一样,除了上课就是在宿舍学习专业上的知识,懒得去图书馆。后来在海桥兄的强烈建议下,去图书馆几次,然后慢慢喜欢上图书馆的氛围(大一主要在图书馆看专业方面的书),然后整个大学里大部分时间就花在图书馆了。

自己完整读下来的第一本课外书应该是《平凡的世界》,那是大一的暑假,在百无聊赖的时候从同学那里翻出来这本书,随便地翻了几页,觉得故事还可以,就慢慢读下去了,反正又没有别的事干。后来不知不觉竟然读完了全本,主要还是自己太闲了吧,实在没有别的事情消磨时间。读完之后,发现写的还可以啊,故事挺好看的,然后也没有太多的感触了。

阅读全文