现在Python的火热已经不是整个编程界的事情了,Python的火热已经蔓延到小学、大学课程,之前看新闻报道说青岛的小学生课程里都开始设置Python的课程了,大学里由原来必考的VB也改成了Python。一时大家都掀起了学习了Python的热潮,而接踵而来的各种课程书籍的推荐,但是接踵而来的推荐也不能说看到推荐就购买,要选择合适的自己的书籍或者课程观看哦~

今天就来为大家推荐一本适合孩子或者文科生所看的Python编程书籍!《小小的Python编程故事》,下面我们就来看一下书籍的内容是什么样的!

《小小的Python编程故事》

作者:毛雪涛

扫码查看详情

这一天,小小的爷爷来到蛋糕店,他在厨房捣鼓了一阵,做出来一款小小从来没见过的奇怪 蛋糕。首先,这个蛋糕是三角形的,看起来表面没有使用奶油,但是却有五种颜色。奇怪的是, 爷爷说这个蛋糕要用吸管来吃。

 蛋糕模板:类的定义 

小小问爷爷:“这个奇怪的蛋糕叫什么名字呢?”爷爷说:“还没想好呢!反正是蛋糕的一种。” 聪明的小小觉得该这么描述这个没有名字的蛋糕:1.  不管怎么样,它是一个物体。2.  它具有一些特征(或者属性),比如,三角形、没奶油、五种颜色。3.  可以对它采取一些动作,或者执行一些“方法”,比如,可以吃它,还可以用吸管“喝” 它,当然还可以出售它。

这个蛋糕虽然奇怪,但是销售却异常火爆,供不应求。小小拿出“蛋糕制造机”来帮忙,但 是“蛋糕制造机”只能按照蛋糕的模板来生产蛋糕。于是,小小先为这款奇怪的蛋糕创建一个模 板。打开 Python IDLE Shell,新建一个文件,保存到 C:\Workspace\Chapter19\Xcake.py,输入代 码如下:

#创建类 class Xcake:
name="古怪蛋糕"
colorNumber=5
color=['红','黄','蓝','绿','黑']
shape='三角形'
creamContent=0     def eat(self):  return '吃我啊!吃我啊!'   def drink(self):    return '喝我啊!喝我啊!'   def sell(self):     return '买我啊!买我啊!' 

这段代码创建了一个生产这种古怪蛋糕的模板,模板名称叫作 Xcake,在模板内部指明了这种蛋糕的名字、颜色、形状和奶油含量,还指明了使用这种蛋糕的三个方法:eat、drink 和sell。在 Python 中称这种模板为“类”,并使用关键字 class 来创建类。类中包含两部分内容:

  • 一系列的变量及其初始值,称这些变量为这类对象的“属性”。

  • 一系列函数的定义,称这些函数为这类对象的“方法”。

创建类以后,凡是根据这个类创造的东西,统统称为类的“实例”,也称为类的“对象”。Python 支持类和对象的所有概念和技术,是一种面向对象的语言。面向对象的编程,被亲切地称为 OOP, 其是英文“Object Oriented Programming”的缩写。不仅 Python,许多程序设计语言都使用 OOP 技术。表 19.1 中列出了 OOP 的一些基本概念。

这里暂不深入讲解这些概念,后面会有详细说明。可以在一个文件中定义多个类。在使用文 件中定义的类之前,需要使用 from…import…来引入类。


 

制造蛋糕:创建对象 


创建好了 Xcake 类后,就可以开动蛋糕制造机来快速生产这种奇怪的蛋糕了。运行 Xcake.py 程序,打开 Python IDLE Shell。这时虽然看起来好像什么也没有发生,但实际上已经在内存中加 载了 Xcake 类。接下来输入以下代码就可以创建一个 Xcake 的对象:

>>> cake1=Xcake()

这样一行代码,就创建了一个 cake1 对象,它具有 Xcake 类所定义的所有属性和方法。在 Python 中,可以使用对象名加点号(.)来引用对象的属性和方法。下面新建一个文件 19.1cakeObj.py, 以演示如何创建和使用对象。代码如下:

#对象示例
from Xcake import Xcake  #引入类
cake1=Xcake()  #实例化
print("这个蛋糕有:",cake1.colorNumber,"种颜色")  #使用对象的属性
print("蛋糕的颜色有:",cake1.color)
print("吃蛋糕时,它会说:",cake1.eat())   #使用对象的方法
print("出售时,它会说:",cake1.sell()) 

这段程序首先创建一个 Xcake 的实 例—cake1 对象。然后使用几个 print() 函数进行输出,在 print()的参数中调用了 对象的属性和方法。


如何制造蛋糕?构造方法 


蛋糕制造机是如何制造出一个蛋糕的呢?这解释起来有点复杂,不过小小觉得它的工作原 理有点像在类里面定义的一种特殊方法—构造方法。每当需要创建对象时,就会调用类的构造 方法,这时,在构造方法里创建的那些函数就会被执行。这些函数就会创建对象的属性。到底构造函数长什么样呢?还是通过小小的 Xcake 类来看一看吧。打开 Xcake.py 文件,在 文件末尾添加一个新的类,代码如下:

#创建类 class XcakePlus:
#定义类变量,也称属性     name="古怪蛋糕加强版"
price=1 #单价
#定义构造方法
def __init__(self,size,qty):
self.size=size
self.qty=qty
#定义其他方法
def eat(self):
print('吃我啊!吃我啊!')
def sumPrice(self):  #计算总价
print("一共:",self.qty*self.price,"元")
def preview(self):
print("您要的蛋糕是:",self.name,",尺寸:",self.size,"号",self.qty,"个。") 

XcakePlus 类定义了 3 个属性和 4 个方法,其中名为__init__的方法,一看其名字就比较特殊,它的名字以两个连续的下画线开始和结束,而且中间必须是 init,这就是类的构造方法。本例中的这个构造方法有 3 个参数:

  • self—用于获取类的实例。它是必需的,且必须为第一个参数,名称随意,但习惯上使 用 self。

  • size—用于获取传入的整数,表示蛋糕的尺寸。

  • qty—用于获取传入的整数,表示购买的个数。

函数体有两行代码,分别将传入的参数size和qty赋给类对象的属性。使用self.size和self.qty 表示对象的属性。在Python中,每个类只能有一个构造方法。如果类中没有自定义的构造方法,如前面的Xcake 类,Python 会使用默认的构造方法。默认构造方法是只有一个 self 参数的方法。值得注意的是,在定义类时,如果要在方法中使用对象的属性,则需要使用 self.size、self.qty、self.price 这样的形式。定义好 XcakePlus 类以后,就可以创建它的对象了。新建一个文件 19.2cakeObj.py,输入以 下代码:

#对象示例2 from Xcake import XcakePlus      #引入类    #创建对象 cake1=XcakePlus(12,2)     #实例化   #直接使用类变量
print("品种:",XcakePlus.name)
print("单价:",XcakePlus.price)   #展示对象的方法
cake1.preview()
cake1.sumPrice()

这段程序首先引入XcakePlus 类,然后依照构造方法创建对象cake1,传入两个参数12 和2。这时 cake1 对象的两个属性 size 和 pty 就分别获得了值 12 和 2。接下来展示了类变量的使用,直 接使用“类名.类变量名”的形式。然后展示了对象方法的使用,使用“对象名.方法名”的形式 来调用。

面向对象编程的好处是可以使用类来快速创建多个对象。例如,可以在 IDLE Shell 的提示 符后面继续创建多个古怪蛋糕加强版的实例:

>>> cake1=XcakePlus(8,1)
>>> cake2=XcakePlus(10,2)
>>> cake3=XcakePlus(12,1)
>>> cake1.preview()
您要的蛋糕是: 古怪蛋糕加强版 ,尺寸:8 号 1 个。
>>> cake2.preview()
您要的蛋糕是: 古怪蛋糕加强版 ,尺寸:10 号 2 个。
>>> cake3.preview()
您要的蛋糕是: 古怪蛋糕加强版 ,尺寸:12 号 1 个。

是不是很简单!一眨眼,小小已经生产了大量的“古怪蛋糕加强版” !

以上内容来自《小小的Python编程故事》

《小小的Python编程故事》

作者:毛雪涛

扫码查看详情

本书是写给孩子看的Python编程书,本书共包括54个章节,分为三个部分。

基础篇包含了Python编程环境的搭建、第一个Python程序的展示、程序的调试方法、异常的处理、Python的基本数据类型和运算符,还包括了基本程序控制结构、类的使用以及常见模块的使用。

实战篇包含了Python循环的应用、冒泡排序和选择排序等基础算法、文件操作、系统信息获取,还包括了图形用户界面编程、正则表达式、多线程程序设计,以及网络编程、数据库编程的基本实现。

提高篇包含了蒙特卡罗算法、欧几里得算法、递归算法、狄杰特斯拉算法、贪心算法、KNN算法以及并行计算的实现,可能会有一些难度,但对于那些喜欢计算科学的读者来说起到了启蒙的作用。

本书适合没有任何编程基础的人学习使用,尤其适合孩子、文科生等非计算机专业的人员使用。

扫码或者点击阅读原文购买

戳这里,阅读原文

小小的 Python 编程故事相关推荐

  1. 小小的Python编程故事

    现在Python的火热已经不是整个编程界的事情了,Python的火热已经蔓延到小学.大学课程,之前看新闻报道说青岛的小学生课程里都开始设置Python的课程了,大学里由原来必考的VB也改成了Pytho ...

  2. 小小的python编程故事电子版_小小的Python编程故事

    原标题:小小的Python编程故事 这一天,小小的爷爷来到蛋糕店,他在厨房捣鼓了一阵,做出来一款小小从来没见过的奇怪 蛋糕.首先,这个蛋糕是三角形的,看起来表面没有使用奶油,但是却有五种颜色.奇怪的是 ...

  3. 小小的python编程故事_小小的 Python 编程故事

    现在Python的火热已经不是整个编程界的事情了,Python的火热已经蔓延到小学.大学课程,之前看新闻报道说青岛的小学生课程里都开始设置Python的课程了,大学里由原来必考的VB也改成了Pytho ...

  4. python趣味案例编程 Pdf,小小的python编程故事

    python编程 20 Python编程请选择编玩边学.Python是一种全新的程序设计语言,可以用它很容易地创造交互式故事情节.动画.游戏.他"我们的目的不是要创办电脑程序编写大军,而是帮 ...

  5. 小小Python编程故事-小小的成绩单(1)

    问题:输出自己的成绩单.首先输出学生名字,然后输出语文.数学和英语三门主课的成绩,并且计算总分,最后输出三门课的最高分.最低分和平均分. 代码: #在屏幕上输出姓名和成绩 score = [80,70 ...

  6. 大专学历,转行自学两年的 Python 开发者故事

    " 阅读本文大概需要 5 分钟. " 我毕业六年了,但与技术和 Python 相关的工作经验也就两年.今天我想跟大家分享自己转行的故事,希望能够鼓励那些跟我一样的朋友共同前行. 我 ...

  7. 不是计算机专业学python能找到工作吗-非计算机行业为什么要转行学习Python编程...

    原标题:非计算机行业为什么要转行学习Python编程 现在的年轻人追求个性化选择,比如更为自由的工作时间???.更为多元化的精神激励.更为舒适的生活方式等等.由此互联网行业不仅满足这些条件还有这很好的 ...

  8. 想学python编程-想学Python编程?你真的适合吗?

    原标题:想学Python编程?你真的适合吗? 有的人说我想学什么.我想干什么,很多时候都是头脑发热,单凭一腔热血,可是这样的路即便走上去你又能坚持多久呢?所以,每每有人问我学Python编程怎么样,我 ...

  9. 学会python编程容易吗-Python 适合初学编程的人学吗?

    相信对于每个人而言,知道编程和学习编程这件事,出发点是不同的.汤哥在北京接触编程的时间是2013年,那个时候还在一个二线城市上大学,还没有这么多各种融资,各种互联网创业的氛围,大家想的更多的是一些线下 ...

最新文章

  1. idea 连接 mysql_IDEA 与MySQL连接问题
  2. php之static静态变量详解
  3. 文本分类 特征选取之CHI开方检验
  4. Redis之压缩链表ziplist
  5. 读书笔记_代码大全_第14章_组织直线型代码_第15章_使用条件语句
  6. Android第四十五天
  7. redhat 7.2更新yum源时踩的坑
  8. go语言的特殊变量 iota
  9. Java拦截器实现拦截controller方法
  10. Android系列之开发环境搭建
  11. Postman下载及WebApi测试遇到问题点
  12. photoshop的抠图小结
  13. Markdown中数学相关
  14. 制作favicon图标
  15. BZOJ3505 [Cqoi2014]数三角形
  16. 福晟集团用创新理念引领发展新趋势
  17. Linux下的按键精灵xdotool
  18. 查询maven依赖的网址
  19. SAS编程|if语句/where语句/select语句
  20. 爬取17k小说网的小说

热门文章

  1. 基于python的分布式扫描器_一种基于python的大数据分布式任务处理装置的制作方法...
  2. android 透明度_Android智能视图翻转器
  3. 在Ubuntu 18.04上搭建SonarQube服务
  4. 探索pytest的fixture(上)
  5. 用计算机来控制飞船在太空中运行,神舟飞船在太空中靠什么动力运行
  6. fft python 举例_Python FFT合成波形的实例
  7. 用好pypi,提高开发速度
  8. Qt C++连接MySQL教程,解决QSqlDatabase:QMySQL driver not loaded
  9. “我创业成功的十大秘诀”
  10. 跳槽,成为程序员晋升与成长的唯一手段?