上一讲介绍了Python编程的概念,我们知道了编程的目的和意义,
同时,还简要的展示了Python最新版软件的安装和验证,
没看到的可以点下方的链接直达;
人类在进行重复性的工作的时候往往会感到枯燥乏味,而计算机却最擅长于重复性的工作,
想起了前段时间一个同门因为实验需要知道实验室的人的BMI值,这其实就是一个重复性的工作,因为每个人给她体重和身高之后,都得按照公式计算一次,
python只需要编写几行代码,然后每个人输入自己的身高和体重后Python就会给出BMI值,并判断是否偏胖,效果如下,
这一应用原理虽然简单,但是应用却很广泛,银行取款机,火车站购票系统网上的汇率转换网站,单位换算等,都是类似这样的操作,
今天这一讲就以实现上述过程为目的展开学习,
0、开发环境(Integrated Development Environment,IDE)
首先我们需要向Python中输入代码,而如果按照上一讲中在Windows PowerShell中写代码运行的话,界面显得不亲和,在开发环境中就可以变得很友善,
开发环境说通俗点就是专门用来写代码的地方,它的存在就是比最初始的软件更方便输写,因为它一般都会根据输入的代码的类型以不同的颜色显示,这样的代码可读性会高很多,也不容易出错,
开发环境有很多,就像我们写字可以使用各种风格不同的笔和纸一样,各有优缺点,它只是一个帮助我们表达的工具,初期不必纠结,等熟练了之后再挑选自己喜欢的就好。
这里我们直接推荐使用软件中自带的开发环境IDLE
这个的好处就是不需要我们再去安装其他软件,
我们只需要右键点击开始菜单栏,
在搜索中输入“IDLE”,
就可以看到如下的图标,
建议大家跟我一样,右键单击这个图标选择固定到“开始”屏幕或固定到任务栏,或者选择打开文件所在位置,然后右键单击添加桌面快捷方式,这样方便下次启动。
点开这个图标打开开发环境(以后称编辑器),可以看到当前安装的Python版本信息,
1. 第一个指令:Hello World
在学习计算机语言的时候,流行着一个近乎迷信的说法,就是让你的计算机语言以输出“Hello Wold”开始,
据说这会给你后续的学习带来好运,少出bug,
不管怎样,也让我们的Python学习从输出“Hello Wold”开始吧
我们只需要在界面中输入:
print('Hello World')
电脑就会按照你的指令输出“Hello World”,
这是你通过“print()”函数向电脑下的第一个指令,
其中学习到了第一个函数:print()
这个函数是Python最基础的函数,用来将函数内的内容打印出来,如果是文本的话需要加引号,
引号其实就是告诉计算机:你只管把我引号内的内容打印在电脑屏幕上,不要做任何处理,原封不动打印出来就好
下面两种方式,感受一下,
值得注意的是,
> Python中除了输入中文,其余情况均需要将键盘切换至英文键盘,否则会报错(运算符和标点符号等都不例外),
> 所有英文要严格区分大小写,
> 单引号(')和双引号('')的作用是一样的,之所以都有存在的必要是因为有时候会出现引号内还有引号的情况,可以在单引号内使用双引号,也可以在双引号内使用单引号;此外,还有三引号('''),它用来引用多行内容,这样打印出来的内容也会是多行显示的,
比如:
比如要过年了,可以打印下面这个,
当然这只是Python最最基础的一个函数而已,看大家能发挥到什么程度了
2.数据类型与函数
只要讲到计算机编程语言就一定少不了数据类型,因为我们必须对数据进行分类,就像我们小学时候学的整数、小数、文本文字等等,
Python中的数据类型也对应包括了
整数(Integer),浮点数(Float)和字符串(String)
因为计算机语言有一个要求就是语义表达要精确,不能有歧义,
所以每个数据只能是一种数据类型,
比如我如果只在纸上写上“2”,问它是哪种数据类型,
大家很自然的会想到它是整数,
其实也可能是字符串啊,因为单纯一个“2”,它既可代表数字2,也可以代表一个文本信号(比如2号球服),就像我们不能说身份证上的那串数字是整数或小数一样,它属于文本文字,也就是字符串。
因此,我们要在特定的条件下才能判断数据类型,
我们也可以借助Python中的"type()"函数判断,
当然有时候我们还需要将不同的数据类型进行转换,我们需要用到下面的三个数据类型转换函数:
int():将其他两种数据类型转换成整数(integer)
float():将其他两种数据类型转换成浮点数(float)
str():将其他两种数据类型转换成字符串(string)
例如,
当然,有时候如果想要知道一长串文本有多少字,我们可以使用len()函数,
这个函数可以帮助我们计算一个文本里有多少字,有时候对于我们未知的数据或者想要知道数据的字数,完全可以发挥作用。
除此以外,Python也可以当作计算器使用,符合常规的计算规则(四则运算),比如,
如果需要用户向计算机输入信息并被计算机调用的话,
还需要使用到input()函数,
从名字上可以判断它是一个输入函数,用来提示用户输入信息,
这样就可以给用户一个限制性的提示了,就像我们在自动取款机上,显示器上也会有类似的提示用户输入的语句,
在计算机运行并显示这行提示文字之后,用户就可以按照提示输入数据了,当然,如果计算机需要对用户输入进去的数据进行调用的话,我们就需要将用户输入的数据存储下来,用代码参与后续的程序编写,这就涉及到变量了。
3. 变量
如果用户按照提示输入了自己的体重和身高之后,计算机要怎么运用用户的数据进行后续的计算呢?
大家都知道BMI=体重/(身高*身高)
我们想象一下我们自己在计算的时候是怎么思考的,
我们预先不知道别人的具体身高和体重值,但我们知道需要将Ta给的身高值和体重值按照上面的公式计算,
在别人给数据之前我们其实都是在用“身高值”和“体重值”这样的概念写出一个“通用公式”的,
其实这里的“身高值”和“体重值”就是计算机中变量的概念,
我们把别人输入的具体的身高数值和体重数值代入到公式中的身高值和体重值中
在计算机中将具体的数据统一命名的过程叫做赋值,英文也叫Name,
Wight = input('请输入您的体重(kg):')
这行代码的意思就是将后面用户输入的数据赋值给Weight这个变量,
几点需要注意:
-这个等号“=”在计算机中是赋值符号,而不是数学中的等号,
-变量的名字我们自己随便取,
-input()函数括号内一般编写提示符,提示用户输入的信息范围及格式等,
-input()函数得到的用户输入的数据会以字符串的数据类型保存在变量中,因此后续需要调用的时候需要注意数据类型,
我们来简单的调用一下,
这里涉及到多行代码,我们需要新建一个脚本窗口(File→New File),
我们之前写代码的窗口叫做“控制台”,现在新建的这个窗口叫做“脚本窗”,
控制台是运行代码的窗口,
脚本窗是专门编写代码的地方,编写好的代码会在控制台运行,
其实以后的代码编写都在脚本窗进行,这样可以使得编码过程更加专注,
下面举个例子操作一下将用户输入的体重“公斤数”转换成“斤”输出,
在脚本窗输入下面的两行代码,
按照下面的操作运行代码,
这个代码写好脚本之后,点击运行时会提示要保存脚本文件,我们可以保存在任意地方并且任意命名,
脚本窗点击运行后程序将转到控制台运行,
对这两行代码解析一下:
用input()函数提示用户输入体重,然后将用户输入的数据赋值给Weight这个变量,因为input()得到函数得到的数据类型为字符串,我们要对其进行运算就需要用float()函数将数据类型转换成浮点数,然后将转换后的数据float(Weight)乘以2,并用print()函数将最终的结果打印出来给用户。
4. 控制流(条件判断)
我们现在其实已经离最开始的例子很近了,但是,针对不同用户的不同的BMI值,他们的体型类型可能不同,有的属于“健康”,有的属于“过重”或“肥胖”等,
那么计算机如何根据计算得到的不同的BMI值来判断用户的体型属于哪一类呢?
这就涉及到“条件判断”了,
条件判断的基本语法是:
if……:
……
elif……:
……
else:
……
其中冒号前的省略号代表条件,
冒号后的省略号代表执行的操作,
elif的数量可以从0个到无数个,
也就是说,当代码运行到条件判断这块来了之后,就会根据先判断数据符合哪一个条件,然后只执行符合条件情况下的操作指令,而不再执行其他条件下的操作,
到这里我们就可以读懂文章开头的例子的代码了,
直接看脚本代码,如下:
我们可以试着结合前面学的知识点解释这组代码,
注意,代码的第5行,
print('您的BMI=' + str(BMI))
print()函数中的内容可以用加号(+)连接,但是要注意保持数据类型一致,
我们将这行代码在控制台运行一下就是最开始的那个程序了,
感觉还不错吧?
今天的分享就这么多了,希望大家多动手自己写代码,也可以尝试做一些其他的程序,比如实验中的计量换算,配液等等……
最后,简单的复习一下:
运用print()和input()两个函数,我们可以实现数据的打印和录入,
print()函数内的内容可以使用加号(+)连接,但要时刻记住保持加号(+)前后数据类型一致,
运用type()函数可以查看数据的类型,
运用len()函数可以计算字符串的长度,
运用int(),float()和str()函数我们可以实现三种数据类型之间的相互转换
运用if……elif……else可以实现条件判断,
最后提醒一句:
当你的代码运行出错的时候,对于初学者来说,极大可能是你的标点符号或字母之类的是在中文键盘下输入的,还有一种就是数据类型的一致性,
当然,在如此短的篇幅中要顾及所有细节是不可能的,希望大家遇到问题可以一起交流学习,
-THE END-
参考资料:
1.中国大学MooC网:《Python语言程序设计》,
2.《A Byte of Python》v1.92(for Python 3.0);
3.https://www.pypypy.cn
领取专属 10元无门槛券
私享最新 技术干货