新网工在YESLAB   

IT技术专业学习平台
IT人才专业服务提供商

 

VUE考试注册预约电话:010-82608710

全国热线:400-004-8626

【Python三国连载】第一回《桃园三结义》

首页    技术博文    Python/Linux    【Python三国连载】第一回《桃园三结义》

 

#Python基础 #趣味学Python


滚滚长江东逝水,浪花淘尽英雄。今天我们来说一下三国。三国当然不能不提的就是桃园三结义,没有三结义,就没有刘关张组合,就没有纵横捭阖的三国故事了。

 

 
就正如我们不提三种基本的数字数据类型,就没有运算啥事情,也就没有Python这么一种能覆盖庙堂之高江湖之远的编程语言了。
 

先说这结义三兄弟中的老三,名叫张小黑,武力值达到99,人称麦霸。为什么叫麦霸,而不叫麦乐鸡呢?这是因为张小黑从小就是个大嗓门,酷爱唱歌,成名曲是一首死了都要爱,唱得昏天黑地,飞沙走石,四邻闭户,张母三迁。

 

 
那么用Python来描述一下这位很是厉害的张小黑小黑侠的武力值吧。
 
Zhang=99
 
简单一行代码,透视了复杂的人生。世界本就是如此,一叶一菩提嘛。所以得意的时候不要张狂,是非成败转头空;但是失意的时候也不必气馁,青山依旧在,几度夕阳红。 
 
这一行代码就是一个Python的语句,也叫赋值语句。中间等号代表着赋值,把等号右边的值赋予给左边的变量。
 
等号左边的Zhang,这个时候是一个变量。变量是什么呢,变量就是一个用来储存计算结果值的元素,有点类似解方程时候碰到的x,如果有人问x是什么,我们的回答是,x是未知数,方程解出来了,x就有解了。变量也是这么一个未知数,一般情况下不需要去解方程,赋值给它,它就有解了,或者说,这个变量就有变量值了。
 
等号右边的99,这是一个整数,也叫整数型,也就是我们这一回要说到的三个最基本的数字数据类型中的第一个。现在把99赋值给Zhang,也就意味着Zhang当前值为99,注意这仅仅是一个临时值。假如小黑侠生病了,武力值变为了9,那么Zhang=9,小黑侠变成了小黑瞎,那就要被人痛扁了。

 

 
我们用最简单的方式跑一下代码,互联网上有很多免登录且可以免费使用的在线Python解释器。衷心感谢他们,让所有的初学者都能够暂时免却安装Python环境的苦恼,而又能体会到Python之美妙。如果我是亿万富翁,我会颁全球最佳科技启蒙奖给他们,可惜我不是。
 
第一个推荐的地方是菜鸟工具,链接是:
https://c.runoob.com/compile/9
 

我们将下面的程序段落(没错,两行代码就是一个小型程序了)复制到上述网址提供的输入框中,看看结果。

 

 

如果无法拷贝粘贴,那就只能有劳各位同学自己敲入代码了。如图所示,输入代码后,点击运行。

 

 

看到了吗?

 

 
右边的输出栏显示了数字9。武力值为9,为什么不是99。你也可以试试看,看看结果如何,是不是大事不好了,危机马上就要降临了,人间如此不值,是不是赶紧回去火星呢。
 
print( )这一行代码也是一个Python语句,代表着输出。按照Python的规范,在大版本Python 2中,print输出语句不用带( )。但是到了Python 3,世界变了,人的观念也要变,不要拘泥于过去的美好,还记得白发渔樵江渚上,惯看秋月春风吗。我们此后都只讲Python 3的语法,不要纠结于Python 2强还是Python 3强这种烧脑的问题了。
 

言归正传,print( )语句就是将 ( ) 内的变量值输出(原意是打印)到屏幕上,这样我们运行代码的人就能看到变量当前取了什么值。所以print(Zhang)的输出结果是9,这时候,我们就知道张小黑小黑侠当前武力值仅为9,成了小黑瞎,有病就要医,你有药吗。

 

 
话说这第二号人物那是响当当的,人称关二爷,关二哥,关帝,武圣,数不过来了,简单来说,就是永远的神。结义三兄弟中排第二的这一位名叫关小红,武力值达到了99.9,我的神,再给你0.1,你就升天了。

 

 
关小红是体育积极分子,酷爱打篮球。因为身高体长,弹跳力惊人,经常上演罚球线起跳灌篮的戏码,每一次篮球赛都收获迷妹无数。这一点也是让神妈操透了心,年纪轻轻就要带墨镜口罩出门,不过也没有一点作用啊,难不成你缩骨么,你总是那么出众,就像漆黑中的萤火虫,你那神乎其技的球艺,还有那一瓶随身携带的Plain boiled cold water,已经出卖了你。
 
我们用Python来描述一下这位玉树临风迷惑万千的永远的小红神的武力值吧。
 
Guan = 99.9
 
这次我们发现等号左右多了空格符,这个并不影响代码运行,删除空格符,效果是一样的。
 
等号左边,变量为Guan,换了一个变量名。等号右边99.9,这是浮点数,也叫浮点型,是我们这一回重点要讲的三种基本数字数据类型的第二种。它和整数型的区别就是多了小数点以及小数点后面的小数。不要小看这一位小数,永远的神之所以是神,就因为小数,论武功,我就是比你多了这么一点点。
 
现在考考你吧。请听题,请把小红神的武力值输出到屏幕上。此处等待5分钟。
 
果然难不倒你啊。那我也来展示一下把,
这次使用的在线Python解释器是PythonTip,链接如下:
http://www.pythontip.com/coding/run
 

然后将下面两行代码复制到上述网址提供的输入框中,看看结果。

 

 

如图所示,输入代码后,点击运行。
 
看到了吗?
 
糟糕,玩砸了。
 
为什么不行呢,原来啊,Python中的变量名是大小写敏感的。Guan和guan这就是两个变量,Guan是小红神,guan可能就是小红参了。友情提示一下,变量名的书写格式我们也称为标识符命名规则,按照规则办事,少走弯路。规则中约定,下划线、大小写字母、数字都可以用于构成标识符,但是数字不能成为首字符,Python内置的关键字不能成为标识符,也不推荐使用Python内置的函数作为标识符,既然是内置,我们就以后慢慢说。
 
特别地,中文和其他的一些亚洲文字也是可以作为标识符的,有兴趣的同学可以自己测试下面的代码:
第一行代码用于告诉Python解释器,我们要使用这些特殊文字了,避免出现一些无法解释的问题。这是一种使用习惯,在本案例中其实不是必须的。
 
回到刚才报错,提示变量没有被定义,也就是Python也不知道guan是什么,很明显,就是你自己输入错误了,试一下纠正错误,然后重新输入,看看这次是否正常了。
 
Python真的是非常nice,非常友好,编写简单,想方设法帮助你减少编写代码的复杂度,并且有错就会赶紧帮你指出。所以说,Life is short, you need Python,翻译过来就是,人生苦短,我用Python

 

 

最后说说这一位惊天地泣鬼神的豪杰,他的名字叫刘一手,人称刘大耳,大耳儿,不过更多人会很服气地称他为博士。为什么叫博士呢,因为刘一手是学习积极分子,从小都大考试没有不是100分的,不然就是干脆不考,得分为0。用学霸来描述大耳怪都属于太轻视他了,必须要用博士来称呼。

 

 
刘博士手长过膝,刘麻麻总是买不到合适的衣服给他的这位大耳儿,为什么是大耳儿我们就不解释了,自己猜吧。我们解释一下衣服这件事情。你说买合身的衣服吧,长袖穿成了T恤,你说买遮得住手的吧,那就不叫衣服叫长袍了。刘同学体育成绩不好是因为经常跑步被自己衣服绊倒。
 
你在想,如果用Python来描述刘博士的武力值,是不是应该这样写:
Liu=0
因为他经常摔跤,然后退赛嘛。
 
其实不然。真正的天才总是不显山露水的,这叫扮猪吃老虎。
刘博士扮猪的时候:
Liu=False
当他穿上T恤了:
Liu=True
 
那么这个Liu,我们就称为布尔类型,简称布尔型,也是我们要说的三个最基本的数字数据类型的第三种。而布尔值看心情,可以是False,可以是True。
 
明明就是英文单词的False和True,为什么说这是数字数据类型呢。我们来做一个有趣的实验,
这次给大家推荐的是另一个在线Python解释器,
也叫在线工具,链接如下:
https://tool.lu/coderunner
 
将下面代码复制到上述网址提供的输入框中,看看结果。

 

如图所示,输入代码后,点击执行。(注意:如图椭圆框所示,要选择使用Python)

 

 
结果如下,在右边的输出框中显示99:
 
布尔类型可以隐式自动转换为整数类型和浮点类型。这一例子中,Zhang=99,是整数,布尔的False值在和整数一起运算的时候,就自动转换为整数的0,所以相加等于99。
 

布尔的True值在和整数一起运算的时候,就自动转换为整数的1,所以相加会等于100,如下图:

 

 
同学们还可以自行测试布尔型和浮点型的运算,看看布尔值将会自动转换为多少。刘博士的故事告诉我们,我们经常看不到事件的真相,那是因为噪音盖住了嗓音,那是因为幻想挡住了常识。
 
话说小黑侠、小红神、刘博士,三人网友见面,一壶浊酒喜相逢,古今多少事,都付笑谈中。这一次他们要组织一支VR战队,准备参加世界赛。故事到这里就要告一段落了,三兄弟歃血为盟,结义金兰,不求同年同月同日生,但求同年同月同日死。商量下来,队名就叫不死鸟,队徽你想想吧。

 
留一个作业给愿意思考的同学吧。
  • 话说小黑侠在VR比赛中使用的武器是丈八蛇矛,长为一丈八,请用Python语句来描述并且显示出来。
  • 话说小红神在VR比赛中使用的武器是青龙偃月刀,重为八十二斤,请用Python语句描述并显示出来。
  • 话说刘博士在VR比赛中使用的武器是双股剑,刘博士出马不靠剑,用的是脑子,我们就不去描述了。
 
参考答案在文末。
 
现在总结知识点。先说一下出场人物,共三人:
  • 张小黑,外号麦霸,也叫小黑侠,武力值99,文娱积极分子,成名作是死了都要爱。
  • 关小红,外号永远的神,也叫小红神,武力值99.9,体育积极分子,成名技是罚球线起跳灌篮。
  • 刘一手,外号刘大耳,也叫刘博士,武力值不详,学习积极分子,成名招式是扮猪吃老虎。
 
那么Python的知识点是什么呢?就是三种基本的数字数据类型:
  • 整数型
  • 浮点型
  • 布尔型
 
以下是补充总结的Python知识点:
  • Zhang=99,这就是一个简单的Python语句,这是赋值语句。
  • print( )语句用于将( )内的值输出打印到屏幕上。
  • 变量命名要遵从标识符命名规则。
  • 语句# Coding=utf-8,用于通知Python解释器使用utf-8的编码规则来解释字符。
  • 布尔型变量在和整数型变量进行运算的时候,会自动变为整数值,0或者1。
  • 整数型、浮点型、布尔型在运算的时候会执行隐式转换。
 
现在公布作业答案:
 
我们用一个海外的在线Python解释器来做实验,链接如下:
https://www.tutorialspoint.com/execute_python3_online.php
 
代码输入以及结果展示如下:
 
文末小彩蛋
 
现在解释一下这个语句:
print("丈八蛇矛的长度是{}".format(a))
print( )中通过" "来引用文字,这涉及到字符串的知识,在后面章节会介绍。

{ }会通过.format(a)来调用a的数值,这叫做格式化输出,有了这个技能,要打印出千变万化的效果都会很简单了。

 


 

Python 实战训练营

 

每天2小时训练营直播理论

加实践-从入门到进阶

新网工学习平台

新网工创新知识传播社区

人人都是新网工,新网工在YESLAB

 

 

 

2020年11月17日 17:25
浏览量:0
收藏