摘要:
通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,如果创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。 如果列表元素可以按照某种算法推算出来,可以在循环的过程中不断推算出后续 阅读全文
摘要:
列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 列表生成式可以用一行语句代替循环生成一个list: for循环其实可以同时使用两个甚至多个变量,比如dict的items()可以同时迭代key和value: 列表生成式也可以使用两 阅读全文
摘要:
如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。 在Python中,迭代是通过for...in来完成的,而很多语言比如C语言,迭代list是通过下标完成的。 Python的for循环抽象程度要高于C的for循环,因为 阅读全文
摘要:
取一个list或tuple的部分元素是非常常见的操作。对于这种经常指定索引范围的操作,用循环十分繁琐,因此,Python提供了切片(Slice)操作符,能大大简化这种操作。 阅读全文
摘要:
定义函数 函数的参数 递归函数 函数名其实就是指向一个函数对象的引用,完全可以把函数名赋值给一个变量,相当于给这个函数起了一个“别名”。 定义函数 在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号,然后,在缩进块中编写函数体,函数的返回值用return语句返回 阅读全文
摘要:
str是不变对象,而list是可变对象。 对于不可变对象,比如对str进行操作: 在上面的示例代码中,要始终牢记的是,a是变量,而‘abc’才是字符串对象。我们经常所说的对象a的内容是‘abc’其实指的是,a本身是一个变量,它指向的对象的内容才是‘abc’。 当我们调用a.replace('a', 阅读全文
摘要:
Python内置了字典:dict的支持。在其他语言中也成为map,使用键-值(key-value)存储,具有极快的查找速度。 把数据放入dict的方法,除了初始化时指定外,还可以通过key放入。 由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉。 阅读全文