目录
就像我们玩游戏的时候,通过手柄控制的一个个人物,来通关。但是如何处理它们直接的行为,关系。这里对于的硬件,是需要"大脑"--->cpu,"身体"--->内存。而一个个变量就存在内存之中。来演绎计算机的奇幻世界。10101011010101这些特殊字符就这样出现在我们的眼前。
Python的运算
Python 3.7版本已经对运算做了很多的优化,也支持了大的长整数。现在咱们对,+
,-
,*
,/
,%
。加,减,乘,除,取余,幂运算做演示。
>>> 1+2
3
>>> 2*3
6
>>> 10/3
3.3333333333333335
>>> 10%3
1
>>> 2**3
8
负整数的一些展示
>>> -3*2
-6
>>> -3**2
-9
>>> -3/2
-1.5
>>> (-10)%3 (这个以后再分析)
2
长整数的计算
>>> 12391239012839018293190328*12371321920831290
153296006825795221520809439035335947763120
Python关于进制的一些描述
由于计算机识别的是101010101011001,所以我们把现实世界的数字转换成计算机识别的字符,所以出现了二进制,八进制,十六进制。
举例:我们从0xAB
来分析,16进制的基础为:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
代表是数字如下:
>>> 0x0
0
>>> 0x01
1
>>> 0x02
2
>>> 0x00
0
>>> 0x00
0
>>> 0x01
1
>>> 0x02
2
>>> 0x03
3
>>> 0x04
4
>>> 0x05
5
>>> 0x06
6
>>> 0x07
7
>>> 0x08
8
>>> 0x09
9
>>> 0x0A
10
>>> 0x0B
11
>>> 0x0C
12
>>> 0x0D
13
>>> 0x0E
14
>>> 0x0F
15
>>> 0x10
16
同时,十六进制,0x0F
转化成二进制为0b1111
, 效果如下:
>>> 0b1111
15
####可以看出,`0b1111`和`0x0F`代表同一个数字,15.
十六进制的显示
那么0xAB
等于多少呢,A代表10,就是10*16+11=171。这就是计算机的算术规则。
>>> 0xAB
171
>>> 0x1B
27
八进制和二进制的显示
####二进制
>>> 0b10
2
####八进制
>>> 0o10
8
转成二进制,八进制,十六进制的方法
>>> bin(30)
'0b11110'
>>> oct(30)
'0o36'
>>> hex(30)
'0x1e'
二,八,十六进制转回十进制的方法
>>> int(0b11110)
30
>>> int(0o36)
30
>>> int(0x1e)
30
Python变量
python的语言不想其他程序高级语言(java,c)那么复杂。就是简单的赋值,而不用指定类型。Python会自动识别其类型。如下:
数字类型
>>> a =8
>>> type(a)
<class 'int'>
浮点数类型
>>> a = 8.123
>>> type(a)
<class 'float'>
字符串类型
>>> a = '44.3'
>>> type(a)
<class 'str'>
>>> a = "zhang"
>>> type(a)
<class 'str'>
列表类型
>>> a = ['zhang','liu','hu']
>>> type(a)
<class 'list'>
元祖类型
>>> a = ('zhang','liu','hu')
>>> type(a)
<class 'tuple'>