老齐教室

Python 中的递归

什么是递归递归(recursion)这个单词来自拉丁语中的 recurre,意思是:匆匆而归、返回、还原或重现。以下是网络上对递归的一些定义: Dictionary.com:表示返回的行为或过程。 Wiktionary :在对象内部定义使用该对象(通常是函数)的操作。 The Free ...
Read more

调试及其重要性

软件在发布之前,应该没有错误,这样才能让用户满意。为了达到这个目的,在开发过程中,调试(debugging)是必不可少的——注意,调试不是测试,两者是有区别的。 什么是调试?软件程序在开发过程中要经历大量的测试、更新、故障排除和维护,程序中有错误和缺陷,是正常现象,关键在于如何改正这些错误和 ...
Read more

开源的社会契约

开源的社会契约开源软件,因为其免费而受到欢迎。但是,对开源代码的维护者而言,时常会受到来自使用者的伤害,比如有人超越授权范围使用开源代码,设置有人对开源代码维护者实施某种程度上的语言暴力等。有一点特别要明确:开源代码的维护者在开源代码方面完全不欠任何人的,而且对待他们不友好就是不道德。 为此 ...
Read more

创建 Python 包

如果你和我一样,希望将编写的 Python 实用程序与同事共享,最好的方法是制作一个软件包:它很容易安装,而且不需要复制粘贴。 不过,如果对其中的方法不熟悉,可能会感到头痛。下面就分几步介绍创建 Python 包的方法,供大家参考。 基本结构创建一个名为podsearch的目录,进入这个目录 ...
Read more

Python运算符

下面总结常见的Python操作符。 算术运算符 运算符 描述 示例 + 两个对象相加 1+2=3 - 得到负数或是一个数减去另一个数 2-3=-1 * 两个数相乘或是返回一个被重复若干次的字符串 2*3=6 / 两个数相除 5/2=2.5 % 两个数相除后所得的余数 ...
Read more

How to Write Unit Tests in Python

用Python进行单元测试Python编程语言,不仅仅在机器学习、数据分析等领域大放异彩,在web开发中等软件开发中,使用者也越来越多。 在软件开发中,有一种被提倡的开发范式:测试驱动开发。在这种开发范式中,编写单元测试是必不可少的。如果不实施严格的测试驱动开发,编写单元测试程序也是必要的 ...
Read more

深入理解循环和迭代

循环,特别是for循环,是Python中常见的语句,甚至于Guido van Rossum(Python创始人)在评论递归的时候说过在Python中“递归已死”,我想这句话的意思不是说在Python中不能用递归,而是说因为Python中的for循环语句足够强大,可以不考虑递归,而是用for循 ...
Read more

从DataFrame中删除列

在操作数据的时候,DataFrame对象中删除一个或多个列是常见的操作,并且实现方法较多,然而这中间有很多细节值得关注。 首先,一般被认为是“正确”的方法,是使用DataFrame的drop方法,之所以这种方法被认为是标准的方法,可能是收到了SQL语句中使用drop实现删除操作的影响。 12 ...
Read more

Python虚拟环境

导言本文是针对《Python大学实用教程》和《跟老齐学Python:轻松入门》两本书的基础内容之后的提升。 通常,在不同的项目中,会用到不同的Python版本——如果有必要的话,也包括一些库的版本,并非总是最新的就是最适合的或者最好的。对此,解决之道就是创建虚拟环境。 一个项目创建一个虚拟环 ...
Read more

Python字符串的前世今生

Python字符串的前世今生1991年,Guido van Rossum发布了Python编程语言的第一个版本,自此,世界迎来了巨变。互联网的发展,要求支持不同的自然语言,这促使了Unicode的发展。Unicode定义了一个通用字符集,它可以表示任何书面语言、各种非字母数字和符号,甚至包括 ...
Read more
Prev Next