今天我们来说说关于Python的基础。
- 数据类型
- 整数
Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,由于计算机支持二进制的方式,所以有时候使用16进制(0x)会更加方便,例如:
1,100,-80,0,0xff00,0xa5b41322
- 浮点数
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差。
- 字符串
字符串可以有三种表示方法,
一般情况下,这三种形式的引号等价。
下面三条语句输出都为:She is a beautiful girl
3-a、使用单引号(’)
print('She is a beautiful girl')
3-b、使用双引号(")
print("She is a beautiful girl")
3-c、使用三引号(’’’)
print('''She is a beautiful girl''')
但是需要注意如下的几种情况:
a1. 单引号:
字符串中含有单引号时不能使用;如下面这条语句程序将报错:
print('She's a beautiful girl')
当然这个语句也是可以正确输出的,那么就必须要使用到转移符 " \ ",改成如下的形式即可
print('She\'s a beautiful girl')
a2.双引号:不能用于字符串中含有双引号的情况;
所以当输出字符串中只含有单引号时,我们可以使用双引号和三引号;
输出字符串中只有双引号时,我们可以使用单引号和三引号;
输出字符串中既有双引号,又有单引号时,我们可以直接使用三引号;
注:转义字符同样适用于此;使用转义字符表示把后面的双引号看作一个字符
a3. 三引号:扩展字符串换行输出功能,如:
print('''she says,
she is a beautiful girl''')
当然这个用单引号的形式也是可以完成的,在需要换行的位置添加 \n就好了
print('''she says,\nshe is a beautiful girl''')
总之记住:三种方式是相互关联的,有联系也有区别。请善用
- 布尔值
布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来:
>>> True
True
>>> False
False
>>> 3 > 2
True
>>> 3 > 5
False
布尔值可以用and、or和not运算
运算规则如下,请记住括号内的内容:
① and运算是与运算,只有所有都为True,and运算结果才是True(两者为真,则为真)
② or运算是或运算,只要其中有一个为True,or运算结果就是True(有一个真,则是真)
③ not运算是非运算,它是一个单目运算符,把True变成False,False变成 True(真即使假,假亦是真)
下面有一些题目,快来练习吧!
>>> True and True
>>> True and False
>>> False or False
>>> 5 > 3 or 1 > 3
>>> not True
>>> not False
>>> not 1 > 2
- 空值
空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
- 变量
变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。
变量在程序中就是用一个变量名表示了,变量名必须是大小写英文、数字和_的组合,且不能用数字开头
a=1 //变量a是一个整数
T='2431a' //变量T是一个字符串
ANS=True //变量ANS是一个布尔类型True
在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量(右侧的值赋值给左边的变量),同一个变量可以反复赋值,而且可以是不同类型的变量
a = 1002 // a是整数
print(a)
a = 'ABC' // a变为字符串
print(a)
理解变量在计算机内存中的表示也非常重要,以a=ABC为例,python解释器做了两件事:
① 在内存中创建了一个ABC的字符串;
② 在内存中创建了一个变量a,并将它只向了ABC这个字符
- 常量
提到了变量,那么必不可少的说一下常量,常量顾名思义就是不能变化的变量,通常全部用大写字符来表示,比如数学中的PI:
PI=3.14159265359
最后解释一下整数的除法为什么也是精确的。在Python中,有两种除法,
一种除法是/,除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
>>> 10 / 3
3.3333333333333335
>>> 9/3
3.0
另一种除法是//(地板除),两个整数的除法仍然是整数:
>>> 10 // 3
3
所以如果要使用精确的除法,就不能使用地板除的这种方式。
因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数
>>> 10%3
1
好了,最后总结下
- 总结
Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。
对变量赋值x = y是把变量x指向真正的对象,该对象是变量y所指向的。
注意:Python的整数没有大小限制
Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)。