本篇的知识点也是所有编程语言的通用知识点.
首先什么是二进制?
先让我们回顾下小学的数学知识: 十进制.
十进制是由0-9共10个数组成, 逢10进1的一种数学算法.
如下图:
所以二进制是什么?
答: 二进制就是由0和1两个数组成, 逢2进1的一种数学算法.
那进制之间是否可以互相转换?
答: 是的, 任何进制之间都是可以互相转换的(这是一个数学问题, 不是一个程序问题).
举个进制对应关系的例子, 请看下表:
十进制 | 二进制 | 说明 |
0 | 0 | |
1 | 1 | |
2 | 10 | 1+1=2, 二进制是逢2进1, 所以结果是10 |
3 | 11 | |
4 | 100 | |
注: 十进制可以连续除2取余来转换成二进制, 具体算法请另行搜索.
那二进制跟计算机有什么关系?
先举个例子, 水是以液体的形式存储在杯子里的.
而数据则是以二进制的形式存储在计算机里的.
换句话说: 最终存入计算机里的数据只有0或1这两个数.
举个例子, 在现实生活中, 我们在本子上记下个数值, 比如”123456789″.
而计算机想把”123456789″存入硬盘的话, 它会先把”123456789″转成二进制”111010110111100110100010101″后再存入硬盘.
那为什么要这么大费周章的使用二进制来存储数据?
答: 因为二进制简单. 虽然转换后的长度变长了, 但对于计算机来讲是可以接受的, 因为它的运算速度快.
举个例子, 请看下图:
图中是以前一种常见的计算机数据存储介质: 光盘.
比如它要存储这个”111010110111100110100010101″的数值,
当光盘刻录机遇到0时就跳过, 移到下一个位置, 遇到1时就往盘面上刻一个洞以代表1 (类似原始人的石壁刻字).
这个存储原理是不是非常简单?
是的, 而简单二字对于电子设备来讲是非常重要的, 因为越简单的东西它越好处理.
讲了这么多, 你可能会想到那文字在计算机中是如何存储的?
答: 对计算机来讲, 十进制数值都只能转换成二进制后再存储了, 何况是文字呢?
那文字是如何转换成二进制的?
答: 使用数字编码来代表, 比如用数字65代表大写字母A, 用数字98代表小写字母b.
这个规定数字编码对应关系的表叫做ASCII码表, 如下表:
十进制 | 二进制 | 文字 |
65 | 100 0001 | A |
66 | 100 0010 | B |
67 | 100 0011 | C |
… | … | … |
97 | 110 0001 | a |
98 | 110 0010 | b |
最后, 本篇另一半的知识点: 什么是字符串?
在编程中,
一个文字称为一个字符 (character)
一段文字称为一个字符串 (string)
在Python中, 字符和字符串都叫字符串, 没有区别 (因为一些编程语言是有区别的).
下面是在Python中创建一个字符串的语法
myStr1 = "Hello Python!"
myStr2 = '你好, Python!'
print(myStr1)
print(myStr2)
请使用英文的双引号括住你想写的文字,
或者使用英文的单引号括住你想写的文字.
请记住一定要用英文的引号括住!
因为不括住的话, Python会认为它是一个变量名.