本文利用的是Python 3.x版本,建议学习3.x版本
py
能够处理任意大小的整数,例如123
,123456789132456
,任意大小,而像C
,Java
等这种语言对整数大小是有要求的,换句话说就是大小是肯定的,例如C
中的int
通常是4
个字节,范围是-2147483648~+2147483647
,至于为何py
能够这样,由于py
内部会根据数的大小进行调整空间,让空间能够存储的下这个数据,所以没有人会说py
的int
是4
个字节(实际上比4
大不少)。编程
print(type(3)) #会输出数据类型int
其实就能够理解浮点数是实数,浮点数在计算机内部是以科学记数法表示的,要记住的就是浮点数的运算是有偏差的,而整数的运算是永远精确的!!例如,你能够运行如下代码,看看结果是否是和你想的同样编程语言
print(1.5-1.4)
可能会出现下图的结果,这就是由于浮点数不是精确的函数
用"
或'
括起来的字符,就是字符串,若是字符串内部有'
,则能够用"
括起来还能够用转义符号反斜杠,如下是实例学习
print('hello') print("hello") print("I'am ") print('\'') print("'\"") # \n是换行,若是\n在字符串里不方便阅读,还能够写成以下形式 print('''line1 line2 line3''') # 等价于 print('line1\nline2\nline3') # print函数默认会输出后换行,关于print的具体用法以后再说
布尔值是True
或 False
,要么为真要么为假,例如(10<5)
这个式子是不正确的,则这个式子的布尔值是False
。通常布尔值和布尔运算用在判断表达式中测试
and,or,not
是三个布尔运算的操做符。True and False
的结果为False
,就是说用and
运算的布尔值,只要有一个是False
,则结果为False
,必须全为True
,才能为True
,True or False
的结果为True
,用or
运算的布尔值只要有一个为True
,则结果为True
,全为False
时结果才是False
,not False
的结果是True
,not
用来取反。例如如下代码spa
print(True or False) print(True and False) print(not True)
如下是布尔运算真值表,包含了上面描述的状况。code
空值是py
里一个特殊的值,用None
表示。None
不能理解为0
,由于0
是有意义的,而None
是一个特殊的空值。对象
以上是py
的基本数据类型,此外py
还提供了列表、字典等多种数据类型,还容许建立自定义数据类型,之后会涉及到。blog
有了数据之后,咱们还得对数据进行运算以获得咱们想要的结果。数据对象和操做符结合后,组成了表达式,一个简单的表达式为2 + 3
两个操做数,一个操做符。如下是基本的数的运算操做符图片
1 + 2 #和 1 - 2 #差 1 * 2 #积 #以上的结果都是int,若是其中有一个数为float,则结果为float 1 / 2 #商,结果是float 3 % 2 #模运算,也就是求余数 5 // 2 #整除运算,结果是2 2**3 #乘法运算,结果是8
如下是测试图片
变量基本和代数中变量是一个意思,例如咱们在方程中最经常使用的x
。只不过在计算机中变量能够表明各类各样的数据类型。
变量在程序中就是用一个变量名表示了,变量名必须是大小写英文、数字和_的组合,且不能用数字开头。在编程语言中,等号=
再也不是数学上相等的概念了,而是赋值的意思,也能够说是分配值,例如如下代码
pi = 3.14159
左边的pi
表明变量,右边的3.14159
表明值,将值利用=
赋予给变量pi
,这就是以上代码的含义。值储存在计算机的内存中,能够当作是将这个值和一个名字进行了绑定,当咱们须要使用这个值的时候,只需使用pi
便可。就像咱们每一个人都有名字同样,一个名字对应了一我的(不考虑重名)。
为何要给值一个名字呢,为了咱们使用方便,例如
pi = 3.14159 r = 2.2 area = pi*(r**2) ##计算圆的面积
不用每次都使用3.14159
,并且顾名思义,变量是会发生变化的,在程序运行中途可能发生变化,咱们没法提早预知,因此这个时候更加展示出了变量的做用。咱们看如下代码
x = 5 x = x + 1 print(x) #结果为6
若是按照数学上的理解x=x+1
是不成立,可是在计算机中=
是赋值号,因此这个式子的意思是将x+1
的值赋予给x
,x+1
的值是6
,因此最后将6
赋予给x
,因此x
最终的结果为6
咱们能够从新绑定变量和值,使用一个赋值式子便可,例如
x = 6 print(x) x = 5 print(x) #输出为6和5
如今x
和5
绑定在了一块儿,6
这个值依然存储在计算机的内存中,可是可能没有变量和其绑定,因此咱们不再能使用这值了,就算咱们新分配一个6
给x
,这个6
也不是以前的6
了。因此能够说以前这个6
是一个废值,py
内部会有垃圾回收机制,检测到这个值是垃圾后,会回收这块空间供以后分配的值使用。我画了如下的图便于理解。
咱们也能够将x
绑定为其余数据类型,例如
x = 5 x = True
若是读者会相似于C
或Java
(静态语言)的语言的话,会以为如上的写法难以想象,会报错,可是在py
这就可使用,由于x
仅仅是一个名字,和哪一个值绑定彻底取决于咱们,可是不建议这样更改绑定的数据类型,最好从始至终让变量保持一种数据类型。
例如两我的合做写代码,第一我的开始将x
做为int
使用,后来看成字符串使用,第二我的在阅读第一我的写的代码时,稍有不慎就会将x
的数据类型搞错,从而带来没必要要的麻烦。
以上只是快速理解和学习的入门级知识,不涉及深刻的理解,例如动态语言、对象、引用等概念,能够本身搜索了解。不过建议学习时,首先有一个整体的把握,首先理解这是个什么东西,等大体都清楚后,再深究细节,这样的学习方法我认为比较好。否则一上来就深究细节,对于已经入门的同窗来讲倒没什么,要是还没入门就深究细节,怕是要劝退。
题外话,知识原本就应该反复的学习,温故而知新,一层层的学习。先搞清楚这是什么,怎么来的,有什么用,这样学习起来不会迷茫。国内的教学,例如数学方面,有些很差的地方在于,上来就是公式,定理,而忘了最根本的问题,为何会有这个公式?这个公式有什么用?(不是作题),例如矩阵的特征值,特征向量,能够用来解决生态系统中的动力方程的问题。这样学起来恐怕就不会那么迷茫了吧~
若是以为不错,能够分享~能够关注公众号~