数据类型计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、 音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在Python中,能够直接处理的数据类型有以下几种: 整数
Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:
计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用 浮点数
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是相等的。浮点数可以用数学写法,如 整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。 字符串
字符串是以''或""括起来的任意文本,比如
如果字符串内部既包含 ‘I\'m \"OK\"!' 表示的字符串内容是: I'm "OK"!
转义字符 >>> print 'I\'m ok.' I'm ok. >>> print 'I\'m learning\nPython.' I'm learning Python. >>> print '\\\n\\' \ \
如果字符串里面有很多字符都需要转义,就需要加很多 >>> print '\\\t\\' \ \ >>> print r'\\\t\\' \\\t\\
如果字符串内部有很多换行,用 >>> print '''line1 ... line2 ... line3''' line1 line2 line3 上面是在交互式命令行内输入,如果写成程序,就是: print '''line1 line2 line3'''
多行字符串 布尔值
布尔值和布尔代数的表示完全一致,一个布尔值只有 >>> True True >>> False False >>> 3 > 2 True >>> 3 > 5 False
布尔值可以用
>>> True and True True >>> True and False False >>> False and False False
>>> True or True True >>> True or False True >>> False or False False
>>> not True False >>> not False True 布尔值经常用在条件判断中,比如: if age >= 18: print 'adult' else: print 'teenager' 空值
空值是Python里一个特殊的值,用 此外,Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型,我们后面会继续讲到。 变量变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。
变量在程序中就是用一个变量名表示了,变量名必须是大小写英文、数字和
变量 t_007 = 'T007'
变量 Answer = True
变量
在Python中,等号 a = 123 # a是整数 print a a = 'ABC' # a变为字符串 print a 这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,赋值语句如下(// 表示注释): int a = 123; // a是整数类型变量 a = "ABC"; // 错误:不能把字符串赋给整型变量 和静态语言相比,动态语言更灵活,就是这个原因。 请不要把赋值语句的等号等同于数学的等号。比如下面的代码: x = 10 x = x + 2
如果从数学上理解 最后,理解变量在计算机内存中的表示也非常重要。当我们写: a = 'ABC' 时,Python解释器干了两件事情:
也可以把一个变量 a = 'ABC' b = a a = 'XYZ' print b
最后一行打印出变量
执行
执行
执行
所以,最后打印变量 常量所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量: PI = 3.14159265359
但事实上 最后解释一下整数的除法为什么也是精确的,可以试试: >>> 10 / 3 3 你没有看错,整数除法永远是整数,即使除不尽。要做精确的除法,只需把其中一个整数换成浮点数做除法就可以: >>> 10.0 / 3 3.3333333333333335 因为整数除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数: >>> 10 % 3 1 无论整数做除法还是取余数,结果永远是整数,所以,整数运算结果永远是精确的。 小结Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。 转载请保留固定链接: https://linuxeye.com/program/2244.html |