数据类型
文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。
在Python中,能够直接处理的数据类型有以下几种:
-
整数(int):若数字较长,Python允许在数字中间以
_
分隔 -
浮点数(float):浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的
浮点数可以用数学写法,如1.23,3.14,-9.01,等等,但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
-
字符串(str):字符串是以单引号或双引号括起来的任意文本,比如’abc’,"xyz"等等。如果字符串内部既包含’又包含"可以用转义字符\来标识
>>> print('I\'m ok.')
I'm ok.
>>> print('I\'m learning\nPython.')
I'm learning
Python.
>>> print('\\\n\\')
\
\
- 布尔值(bool):布尔值和布尔代数的表示完全一致,一个布尔值只有
True、False
两种值,要么是True
,要么是False
,在Python中,可以直接用True、False
表示布尔值(请注意大小写)
布尔值可以用and、or和not
运算。
- 空值(None):空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
变量
变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。
变量名必须是大小写英文、数字和`_`的组合,且不能用数字开头
变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。
变量在计算机内存中的表示:
a = 'ABC'
Python解释器干了两件事情:
- 在内存中创建了一个
ABC
的字符串; - 在内存中创建了一个名为a的变量,并把它指向’ABC’。
一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据,
常量
常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
Python根本没有任何机制保证PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。
总结
Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。
Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的,超出一定范围就直接表示为inf(无限大)。