Python学习(对象)

a=’ABC’
b=a
a=’XYZ’
print(b)

b的值会是ABC

因为在内存先生成了变量a,再生成了字符串’ABC’,a指向字符串’ABC’
后又生成变量b指向a,表面上是指向变量a,但是实际上,是通过变量a的指针
指向了变量字符串’ABC’是一种越过了a,直接指向的行为。打个比方就是b找a问到了’ABC’的位置,直接去访问’ABC’,并不是说a后面找不到了,b就找不到’ABC’这种事情。

Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。

对变量赋值x = y是把变量x指向真正的对象,该对象是变量y所指向的。随后对变量y的赋值不影响变量x的指向。

注意:Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的,例如Java对32位整数的范围限制在-2147483648-2147483647。

Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)。

bytes 是指字节对象

一般用于在传输编码的时候,所有打印到显示屏的一般都是unicode

format

除了使用 %这样的类似c语言的输出,还可以使用format方法,format可以看似一个列表,使用{0},{1}这样的索引来引出输出值,{2:.2f}这样的输出:后面加输出格式来指定输出样式例如:

print(‘{0},{1},{2:.3f}’.format(1,’hello’,1.23456))

会输出”1,hello,1.235″(四舍五入的原因)

List的一些方法

List包含的元素类型可以不同
insert(num,value) 指定位置插入元素
len()
pop() 删除末尾元素
append() 增加元素到末尾

tuple可变的案例

空tuple 直接这样定义t=()
但是只要有一个元素就必须多加个,来帮助定义,不然会以为是其他类型变量
t=(1,)

t = (‘a’, ‘b’, [‘A’, ‘B’])
t[2][0] = ‘X’
t[2][1] = ‘Y’
t
(‘a’, ‘b’, [‘X’, ‘Y’])
参考之前我写的a指向b指针的问题