首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开放Python书籍:一本短小精悍的初学者入门指南

开放Python书籍:一本短小精悍的初学者入门指南

作者头像
IT派
发布2018-07-30 17:04:16
5460
发布2018-07-30 17:04:16
举报
文章被收录于专栏:IT派IT派

如何快速熟悉 Python 编程一直是很多初学者的疑问,我们经常考虑要不要系统地从头开始啃 Python 教程,但这种方法不仅非常枯燥且很难坚持。因此,对于很多入门读者,更好的方式是学习基础的 Python 编程,然后在实践中完善代码技巧。本文介绍了一本非常精炼的 Python 免费书籍,它不仅有基础知识,同时每一章节还有非常多的练习与源代码。

项目地址:https://github.com/joaoventura/full-speed-python

该书是使用实践方法教授基础的 Python 编程语言。其方法相当基础:在简要介绍每个主题之后,读者要解答练习题来巩固知识点。这些练习题都是非常经典的任务,它们可以让我们在短时间内熟悉 Python 的使用。

本书在第二章介绍了 Python 在各种操作系统上的安装并依次介绍了最基本的数据结构、数值和字符串、函数和模块、循环、字典和最后的类与目标。该书每一章都有非常多的配套练习题,且整本书非常短小精悍(22 页)。在该 GitHub 项目的发布页中,作者提供了 PDF 和 Epub 两种阅读版本和源代码。

目录

1 前言

2 安装

2.1 Windows 上的安装

2.2 macOS 上的安装

2.3 Linux 上的安装

3 基本数据类型

3.1 数值型习题

3.2 字符串型习题

3.3 列表型习题

4 模块和函数

4.1 数学模块习题

4.2 函数习题

4.3 递归函数

4.4 递归函数习题

5 迭代和循环

5.1 循环习题

5.2 while 循环习题

6 字典

6.1 字典习题

6.2 子字典习题

7 类

7.1 类习题

7.2 类继承

7.3 类继承习题

Python 的安装其实非常简单,方法也非常多,本书介绍的安装都是不使用 pip 等包管理工具的方法,其它方法还可以安装 Anaconda 等集成开发环境。

第三章介绍了基本的数据类型与数据结构,如下展示了字符串与列表的基本使用:

>>> "Hello" ∗ 3
 ’HelloHelloHello’

字符串执行乘积运算可以复制多次,以下展示了列表的简单索引方法。

>>> l = [ ’a’, ’b’, ’c’, ’d’, ’e’] 
>>> l[ 1 : 3 ]
[ ’b’, ’c’] 

第四章介绍了基本的模块与函数。首先在机器学习中,模块的导入与调用时非常重要的,因为很多时候科学计算库与模型框架能节省很多时间。以下简单地导入了一个数学模块:

>>> import math
>>> math.cos(0.0)
1.0
>>> math.radians(275)
4.799655442984406

当我们重复使用一个过程时,我们可以将这个过程定义为函数,以在主体函数中重复调用。

>>> def add_one (val) :
      pr int ( "Function got value", val)
 return val + 1

>>> value = add_one(1)
Function got value 1
>>> value
2

第五章介绍了迭代与循环,这是在训练过程中不可缺少的部分。这一部分主要描述了 for 循环与 while 循环,其中 for 循环经常用于列表循环。

>>> for value in [0, 1, 2, 3, 4, 5]:
      print ( value ∗ value )

0
1
4
9
16
25

# 另一种列表循环
>>> mylist = [1, 5, 7]
>>> for i in range(len (mylist)):
      pr int ( "Index :", i," Value :", mylist[i])

Index : 0 Value : 1
Index : 1 Value : 5
Index : 2 Value : 7

根据个人经验,我们感觉 while 循环在机器学习中使用得比 for 循环少。大家在迭代训练训练或处理列表时基本上都是使用的 for 循环,以下展示了简单的 while 循环。

>>> n = 4
>>> while n > 0 :
      pr int ( n )
      n = n−1

4
3
2
1

第 6 章介绍了字典,它在机器学习中是非常重要的数据结构。例如我们在 TensorFlow 中使用占位符定义输入数据,那么我们就需要使用字典馈送输入数据与对应的标注。

ages = {
 "Peter":10,
 "Isabel":11,
 "Anna":9,
 "Thomas":10,
 "Bob":10,
 "Joseph":11,
 "Maria":12,
 "Gabriel":10,
}
>>> print (ages["Peter"] )
10

最后一章介绍了面向对象编程的基础,即类和对象。在机器学习中,使用类来定义模型是非常常见的方法,如果希望简单的看懂模型源代码,那么类与对象的知识就必不可少了。

class Person:

      def __init__(self, name, age):
          self.name = name
          self.age = age

      def greet(self):
          print("Hello, my name is %s!" % self.name)
>> a = Person("Peter", 20)
>>> b = Person("Anna", 19)

>>> a.greet()
Hello, my name is Peter!
>>> b.greet()
Hello, my name is Anna!

>>> print(a.age) 
20

以上就是该书籍的简要介绍,读者可具体查看该 GitHub 项目,并下载书籍与源代码。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT派 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档