上一篇我们介绍了 Requests 库的基本用法,学会之后大家就可以应付一般的请求了。这一篇我们接着介绍 Requests 的高级用法,以便应付一些棘手的问题。
第60天:Requests的基本用法
之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助。入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取。那么这一节来简单介绍一下 requests 库的基本用法。
第55天:爬虫的介绍
作为程序员,相信大家对“爬虫”这个词并不陌生,身边常常会有人提这个词,在不了解它的人眼中,会觉得这个技术很高端很神秘。不用着急,我们的爬虫系列就是带你去揭开它的神秘面纱,探寻它真实的面目。
第67天:PyQuery 详解
PyQuery 库是一个非常强大又灵活的网页解析库,如果你有前端开发经验,那么你应该接触过 jQuery ,那么 PyQuery 就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严格实现,语法与 jQuery 几乎完全相同。
LeetCode面试系列 第5天:No.204 - 统计质数
在上篇算法题的文章中,我们介绍了 LeetCode 中的一道数学题 - 快乐数 。今天,我们来聊聊质数(英文是Prime,也称为素数)相关的面试题。以前很多编程书上会有个经典问题,即判断一个数是否是质数,在那之后大家应该对判定质数的逻辑有了一定的认识。今天呢,我们来解决一个进阶问题,如何计算一个区间内素数(质数)的数量。
LeetCode面试系列 第4天:No.202 - 快乐数
或许你不知道的是,Leetcode 中是有很多 数学题 的,本文要解析的题 快乐数 就是其中到一个典型问题,本题将基于数据结构 set
来求解。
第20天:Python 之装饰器
Python 之装饰器
1. 概念介绍
装饰器(decorator),又称“装饰函数”,即一种返回值也是函数的函数,可以称之为“函数的函数”。其目的是在不对现有函数进行修改的情况下,实现额外的功能。最基本的理念来自于一种被称为“装饰模式”的设计模式。
在 Python 中,装饰器属于纯粹的“语法糖”,不使用也没关系,但是使用的话能够大大简化代码,使代码更加易读——当然,是对知道这是怎么回事儿的人而言。
第25天:Python datetime&time
在前面的章节中已经介绍了一些 Python 常用的模块,本节再介绍两个模块 datetime 模块和 time 模块,这两个模块主要用于转换日期格式的功能。
第22天:Python NameSpace&Scope
命名空间定义了在某个作用域内变量名和绑定值之间的对应关系,命名空间是键值对的集合,变量名与值是一一对应关系。作用域定义了命名空间中的变量能够在多大范围内起作用。
命名空间在 Python 解释器中是以字典的形式存在的,是以一种可以看得见摸得着的实体存在的。作用域是 Python 解释器定义的一种规则,该规则确定了运行时变量查找的顺序,是一种形而上的虚的规定。
第21天: Web 开发 Jinja2 模板引擎
被之前的文章中,简单介绍了 Python Web 开发框架 Flask,知道了如何写个 Hello World,但是距离用 Flask 开发真正的项目,还有段距离,现在我们目标更靠近一些 —— 学习下 Jinja2 模板。
第19天:Python 之迭代器
第18天:Python 高阶函数
函数式编程现在逐渐被广大开发群体接受,越来越多的开发者门开始使用这种优雅的开发模式,而我们使用函数式编程最主要的是需要清楚:
- 什么是高阶函数(Higher-order Functions)?
- Python 中高阶函数有哪些?要怎么用?
第17天:Python 函数之参数
定义一个函数非常简单,但是怎么定义一个函数,需要什么参数,怎么去调用却是我们需要去思考的问题。
如同大多数语言一样(如 Java),Python 也提供了多种参数的设定(如:默认值参数、关键字参数、形参等)。使用这些参数定义出来的代码,可以让我们适应不同的开放场景,也能简化我们的代码开发工作。
第14天: Web 开发 Flask 介绍
WEB 开发是现在程序必会的技能,因为大部分软件都以 Web 形式提供,及时制作后台开发,或者只做前台开发,也需要了解 Web 开发的概念和特点。 由于 Python 是解释性脚本语言,用来做 Web 开发非常适合,而且 Python 有上百中 Web 开发框架,以及成熟的模板技术,使得Web开发如虎添翼。今天借用 Flask 框架,快速学习一下 Python 的 Web 开发知识。
第15天:Python set
LeetCode面试系列 第3天:No.67 - 二进制数求和
大家都知道 LeetCode 中的第一道题是 Two Sum,比较简单。我们今天决定挑一个与之类似,但难度稍大于之的问题 二进制之和 来分析,其中涉及到的主要知识是 Python 中的 进制转换,比如后面的解题方法中我们先将二进制转换为十进制,最后又将十进制转换回二进制。
第13天:Python 输入输出
在前几篇文章中,我们其实已经接触了 Python 的输入输出功能,本篇文章中我们再来详细学习一下。
LeetCode面试系列 第2天:No.136 - 只出现一次的数
第12天:Python 之引用
Python 之引用
1. 引用简介与工具引入
Python 中对于变量的处理与 C 语言有着很大的不同,Python 中的变量具有一个特殊的属性:identity,即“身份标识”。这种特殊的属性也在很多地方被称为“引用”。
第11天:Python dictionary
Python 中的字典提供了一种灵活的访问和组织数据的方式
- 字典是由很多值组成的集合
- 字典的索引可以是不同的数据类型,同样也不止是整数,也有字符串
- 字典的索引被称为“键”,键及键所关联的值叫键值对(类似于 Java 中的 Map 集合)
- 字典是另一种可变容器模型,且可存储任意类型对象。
- 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示: