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

作者:机器之心 来源:机器之心 公众号

分享到: 03-25

选自GitHub机器之心整理

参与:思源

如何快速熟悉 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’]

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

>>>importmath

>>>math.cos(0.0)

1.0

>>>math.radians(275)

4.799655442984406

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

>>>def add_one(val):

print("Function got value",val)

returnval+1

>>>value=add_one(1)

Functiongot value1

>>>value

2

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

>>>forvalue in[0,1,2,3,4,5]:

print(value∗value)

0

1

4

9

16

25

#另一种列表循环

>>>mylist=[1,5,7]

>>>fori in range(len(mylist)):

print("Index :",i," Value :",mylist[i])

Index:0Value:1

Index:1Value:5

Index:2Value:7

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

>>>n=4

>>>whilen>0:

print(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

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

classPerson:

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 isPeter!

>>>b.greet()

Hello,my name isAnna!

>>>print(a.age)

20

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

本文为机器之心整理,转载请联系本公众号获得授权。

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:editor@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

用python公众号开书城步骤_资源 | 开放Python书籍:一本短小精悍的初学者入门指南...相关推荐

  1. python 公众号爬虫_python_爬虫_微信公众号抓取

    importrequests,pymysqlimportjson,jsonpath,random,re,time,datetime,os,imghdrfrom lxml importetreefrom ...

  2. python 公众号 关注者位置_微信公众号获取用户地理位置

    很久没搞微信的js-sdk了, 搞了一下午, 刷新页面老是失败, 没想到结合经验给大家展示下获取用户地理位置 第一步:登录微信公众号https://mp.weixin.qq.com 首先先设置最基本的 ...

  3. 好想学python公众号怎么猜人_你要偷偷的学Python,然后惊呆所有人(第六天)

    标题无意冒犯,就是觉得这个广告挺好玩的 文章目录 前言 邮件群发 代码参考 伪代码1:发送一个空壳邮件 伪代码2:构建邮件内容 群发邮件 提高代码可复用性与可用性 告白气球 我画了个圈,欢迎大家来我们 ...

  4. python公众号推荐 知乎_爬取公众号及知乎专栏文章的标题链接的方法汇总

    记一次最近的工作内容(奇怪的任务增加了)因为Python是去年接触并且没有过爬虫的实际学习操作,所以在出现"要收集文章标题链接"的任务是还是有点难以下手的.虽然有了解过爬虫可以方便 ...

  5. python公众号文章阅读量_史上最快、最笨的公众号文章阅读数、在看数采集,哈哈...

    先前写过一篇<Python爬虫实践:如何快速.高效的爬取微信公众号阅读在看>的文章,里面介绍了四种公众号阅读数.在看数的采集方法,分别是: 第一种:使用第三方的平台获取 第二种方法:使用P ...

  6. python公众号推荐 知乎_如何推荐自己的公众号?

    谢邀 公众号是现在新媒体平台中流量非常多的一个平台?很多小伙伴都有自己的公众号,楼主提到如何推荐自己的公众号,换句话理解就是,如何让更多的人关注自己的公众号?小编觉得个人的话. 一.平台 1.各类SN ...

  7. python公众号文章爬虫_拒绝低效!Python教你爬虫公众号文章和链接

    本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 前言 上一篇文章整理了的公众号所有文章的导航链接,其实如果手动整理起来的话,是一件很费力的事情,因为公众号里添加文章的时候只 ...

  8. python 公众号文章发布_分享一个牛逼的Python项目:公众号文章爬虫

    我订阅了近 100 个公众号,有时候想再找之前读过的文章,发现搜索起来特别困难,如果忘了收藏,估计得找半小时,更让人无语的是,文章已经发布者删除,或者文章因违规被删除.那么有没有这样的爬虫,可以将公众 ...

  9. python 公众号爬虫_整理公众号文章?Python爬虫让一切变的简单……

    有时候公众号文章需要进行整理分析,要把所有文章的链接整合起来还真不是一个容易的事情!手动整理固然简单,但文章数量多起来整理还真不是一件容易的事情. 这个时候我们可以用到神器Python,定制爬虫的指定 ...

最新文章

  1. formdata.append加多个值_呆哥数学每日一题 —— 多个最值函数混合向量
  2. memcpy和strcpy的区别及memcmp和strcmp的区别
  3. html5金牌榜,member-Grading.html
  4. Java基础实战Bank项目01-04
  5. 第一节:从面向对象思想(oo)开发、接口、抽象类以及二者比较
  6. 最短路径——迪杰斯特拉算法——图的数据结构
  7. 电视android怎么解决,安卓手机怎么投屏到电视?用这3种方法可完美解决
  8. 能买?这款手机搭载联发科P60+32G,仅售399元
  9. Hyperledger Fabric 实战(十): Fabric node SDK 样例 - 投票DAPP
  10. NoSuchMethod: ByteBuffer.position(I)
  11. Python用可变参数找出最大值和最小值
  12. 最新网卡驱动下载win7
  13. java压缩图片工具类Thumbnailator
  14. 蒙特卡洛泊松分布matlab,泊松分布在MATLAB中那些代码是什么意思啊
  15. 搜索引擎推广公司引擎推广方法及技巧
  16. scrapy下载斗鱼主播图片
  17. 庖丁解牛Transformer原理
  18. linux查找多少天前的文件,linuxfind查找大于多少天的文件,并删除之
  19. python 图片识别二维码_教你用Python实现实时二维码识别
  20. 知名插画师走尺,带你走进“薪”世界

热门文章

  1. 具备安全态势感知能力的安全管理平台
  2. Screenshot of a full element in Selenium C#
  3. Twitter的分布式自增ID算法snowflake (Java版)
  4. 织梦本地调试运行PHP不显示图片,织梦dedecms不能下载远程图片实现图片本地化解决方法...
  5. PHP7 serialize_precision 配置不当导致 json_encode() 浮点小数溢出错误
  6. Sublime Text3 安装SublimeLinter
  7. SonarQube的安装、配置与使用
  8. Go的sync.Mutex(七):互斥锁锁定一个资源 只有一个协程操作其他等待
  9. PHP中的dirname
  10. jQuery的链式操作