Python基础
一、数据类型和变量
1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量。
例如:
a =520# a是整数print(a)
a ='LOVE'# a变为字符串print(a)
这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,赋值语句如下(// 表示注释):
inta =520;// a是整数类型变量a ="LOVE";// 错误:不能把字符串赋给整型变量
和静态语言相比,动态语言更灵活,就是这个原因。
2.理解变量在计算机内存中的表示也非常重要。
当我们写:
a = 'ABC'
时,Python解释器干了两件事情:
在内存中创建了一个'ABC'的字符串;
在内存中创建了一个名为a的变量,并把它指向'ABC'。
3.最后解释一下整数的除法为什么也是精确的。
在Python中,有两种除法,一种除法是/:
>>>10 / 3
3.3333333333333335
/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
>>>9 / 3
3.0
还有一种除法是//,称为地板除,两个整数的除法仍然是整数:
>>> 10 // 3
3
你没有看错,整数的地板除//永远是整数,即使除不尽。要做精确的除法,使用/就可以。
因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数:
>>>10 % 3
1
无论整数做//除法还是取余数,结果永远是整数,所以,整数运算结果永远是精确的。
二、字符串和变量
1.Python的字符串
在最新的Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言,例如:
>>>print('可以显示中文的str')
可以显示中文的str
对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符:
>>>ord('B')66>>> chr(32654)'美'>>>ord('美')32654
由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。