凯文.凯利以预测科技发展趋势而出名,在90年代里,他曾在他的著作《失控》中提及了云计算、物联网、虚拟现实等概念。他预言人类的未来是镜像世界。
python世界可以看作部分现实世界的【镜像】,部分现实世界的东西、概念都可在python世界里找到对应:

数据类型
Python里,最常用的数据类型有三种——字符串(str)、整数(int)和浮点数(float)。
字符串
字符串英文string,简写str。
1 2 |
name='千寻' print("Let's play") |
字符串的识别方式非常简单——有层名为【引号】的皮,只要是被【单/双/三引号】这层皮括起来的内容,不论那个内容是中文、英文、数字甚至火星文。只要是被括起来的,就表示是字符串类型。
在这组代码里,【’千寻’】、【”Let’s play”】都属于字符串类型。
1 2 3 4 5 6 7 8 9 10 11 |
Chinese = '镜像世界' English = "mirror world" number = "666" symbol = '''科A!@''' mixture = '镜像世界mirror world666科A!@' print(Chinese) print(English) print(number) print(symbol) print(mixture) |
字符串,顾名思义,就是由一个个字符串起来的组合,字符可以是一个数字、一个字母、一个文字,甚至是一个符号。字符串可以表达现实世界里的词、语句、表达式等。
1 2 3 4 5 6 7 8 9 |
a = '''Python魔法可以生成镜像世界吗?''' b = '''镜像世界的意义是解决一些在现实世界难以实现的任务,同意+1''' c = '''clapping!耶!''' d = '''进入镜像世界——python,提高战斗力!''' print(a) print(b) print(c) print(d) |
1 2 3 4 5 6 7 8 9 |
question = 'Python魔法可以生成镜像世界吗?' meaning = '镜像世界的意义是解决一些在现实世界难以实现的任务,同意+1' emotion = 'clapping!耶!' slogan = '进入镜像世界——python,提高战斗力!' print(question) print(meaning) print(emotion) print(slogan) |

整数
有的时候,某些数据它脱了【引号】的马甲,也照样能打印出来。例如在上一关我们见过的【print(520)】。
这就是我们要介绍的,常见数据类型中的第二种:整数,整数英文为integer,简写做int。Python世界的整数其实和现实世界数学中定义的一样:是正整数、负整数和零的统称,是没有小数点的数字。
1 2 3 4 |
a = 10 b = -60 c = 6841 d = 0 |
整数其实是一个不带小数点的数字,可以不穿名为引号的马甲,直接跟print()函数组团搞输出,比如下列代码:
1 2 3 4 5 |
# 打印整数 print(666) # 打印结果 666 |
我们已经知道了字符串有【引号】的保护,可以和符号及其他文字类数据,譬如中文、英文随意组合。
而整数脱掉了【引号】马甲,只能『单独行动』。一旦碰上符号及其他文字类数据,譬如中文、英文,立马被报错秒杀。
比如像这样:
1 2 3 4 5 6 |
# 打印数据 print(6真实) print(6virtual) # 终端显示结果:报错:无效语法 SyntaxError: invalid syntax |

浮点数
浮点数非常好识别,它比整数多了一个小数点『.』,比如下列代码中的数字都是浮点数。
1 2 3 |
1.0 3.14159 -0.33 |
浮点数的英文名是float,与整数(int)和字符串(str)不同,浮点数没有简写。
浮点数可能让你有点眩晕,这是因为,与【整数运算结果永远精确】的特点不同,计算机里浮点数的运算是不精确的,会有四舍五入的误差。
1 |
print(0.55+0.3) |
1 2 |
#终端显示结果: 0.8500000000000001 |
Python计算浮点数时,会先把0.55和0.3转化成二进制数【注:二进制数由0和1表示,逢二进一】,如下:
1 2 3 |
# 进制转换 0.55(十进制) = 0.1000110011001100110011001100110011001100110011001101(二进制) 0.3(十进制) = 0.0100110011001100110011001100110011001100110011001101(二进制) |
而在这个转化过程中存在误差,这样,就造成了我们与程序计算结果的差异。
然后,这俩二进制数通过二进制法则运算后,再通过复杂的计算公式,将二进制结果转成十进制小数。

总结:
