一、引言
本文开头给出了一个计算器(来自iPhone)的图形化界面截图,这便是我们常用的计算器。Python是一门超级强大的语言,她可以帮我们完成许多不可思议的酷炫工作,今天我们先从一个简单的计算器程序应用开始。
学习计算机编程和学习英语、法语、日语一样,是一门计算机语言的学习。计算机语言有很多种,例如C、C++、C#、JAVA、Python等等等。本系列教程主要是学习Python,Python计算器的本质就是用Python的语言和方法去描述数学算术。
二、Python运算符
1、Python算术运算符
Python算术运算符主要是7个: + - * / % ** //
如上图所示,对变量a、b分别赋值为5、3。敲入相关的运算代码,运行结果也如图所示,相关的算术运算符的数学含义也在源代码的注释中给出解释。
Python中的注释以 # 字符起始,直至实际的行尾。注释可以从行首开始,也可以在空白或代码之后,但是不出现在字符串中。文本字符串中的# 字符仅仅表示 # 。代码中的注释不会被 Python 解释,学习示例的时候可以忽略它们。(字符串章节会详细解释)
2、Python比较运算符
如上图所示,对变量a、b分别赋值为5、3。敲入相关的运算代码,运行结果也如图所示,相关的比较运算符的数学含义也在源代码的注释中给出解释。
这里变量c的结果均为False和True,这两个类型为bool变量的类型,False相对于0,True相当于1。
网上找到的教程中<>运算符和!=运算符一样,都表示不等于,但是这里会有语法错误,于是将源代码中相关的代码 注释了。
3、Python赋值运算符
如上图所示,对变量a、b分别赋值为5、3。敲入相关的运算代码,运行结果也如图所示,相关的赋值运算符的数学含义也在源代码的注释中给出解释。
绝大多数计算机编程语言的运算符中 =表示赋值, ==表示比较判断是否相等,这个和传统的数学中符号有差异。
4、Python位运算符
如上图所示,对变量a、b分别赋值为60、13。敲入相关的运算代码,运行结果也如图所示,相关的位运算符的数学含义也在源代码的注释中给出解释。
位运算直接操作内存中二进制数值,位运算对程序算法的性能有显著提升。
5、Python逻辑运算符
Python逻辑运算符有3个: and or not
如上图所示,对变量a、b、x分别赋值为100、200、0。敲入相关的运算代码,运行结果也如图所示,相关的逻辑运算符的数学含义也在源代码的注释中给出解释。
6、Python成员运算符
Python逻辑运算符有2个: in 、not in
如上图所示,对变量a、x分别赋值(x为一个list,后续篇幅会讲到,这里可以认为是一个数的集合)。敲入相关的运算代码,运行结果也如图所示,相关的成员运算符的数学含义也在源代码的注释中给出解释。
7、Python身份运算符
Python身份运算符有2个: is 、is not。动态类型(dynamic typing)是Python一个核心概念。Python的变量(variable)不需要声明,而在赋值时,变量可以重新赋值为任意值。身份运算符用来比较两个对象的存储单元,也就是我们说的内存。在C语言中,我们称 int a=100这种语法,a 为变量,而在Python中,这些是对象。Python通过引用计数的方式来管理这些内存中的对象,Python的内存管理涉及到的知识点很庞大,这里不继续展开了,毕竟这是“小白篇”教程,内存管理以后会单独的去讲到。
如上图所示,a=20 b=20,这时候我们打印输出a b的十六进制内存地址,会发现 a b的内存地址是相同的,这个区别于C语言。当b=30的时候,内存地址就不一样了。这里函数id()为获取对象a b的内存地址。需要注意的一点是,程序每次运行的时候,打印输出的内存地址可能都不一样,但是是否会是同一块内存的逻辑结果是不会改变的。
三、Python数学函数
重新看一遍计算器的界面,通过上面的学习,我们已经知道了如何在Python中计算加减乘除。但是高级计算器会提供例如三角函数、指数、对数等等等的快捷计算方式。Python作为一门十分强大的语言,自然也提供了这些函数方法。
如上图所示,使用Python的math模块,需要在代码的开始部分加入语句:
import math
然后会看到math模块提供了非常丰富的数学函数方法,这里的源代码中并没有逐个函数的给出示例,但是在源代码中给出了常用函数的调用方法和注释说明。
四、总结
好好学习,天天向上。