Python数据类型
一个热爱技术的菜鸟...用点滴的积累铸就明日的达人
# 字符串类型,和Java中的字符串很像都是不可变量 s = 'python' # 字节数组bytes b = b'Python' # 整数类型,精度不限的整数 i = 47 # 浮点数类型,精度与系统相关 f = 6.72 # 布尔类型,True与False类型 bl = False # 复数类型 c = 3 + 2.7j # 列表类型,其内部的元素的引用可以变 l = [3, '4', s, b] # 元组类型,其内部的元素的引用不可变 t = (3, '4', s, b, l) # 字典类型,一个key对应一个value,key不重复,value可以重 d = {'4': 4, 'true': True} # 和字典类型很像,只不过只存在key不存在value,可以保证不重复 s = {4, '5', s, b}
字符串:在Python中声明字符串有三种方法,且这三种声明方法是完全等同的
s1 = 'python' s2 = "python" s3 = '''python''' #可以多行
此处要注意一下,Python中是没有类似与C/Java中char这个概念的,对与Python来说单个的字符也是字符串,还有Python中的字符串与Java中的字符串一样都是具有不变性的,也即不可以通过修改字符串中的值来更改字符串。Python的字符串类型有一个很好的优势,那就是很容易写出正则表达式(正则表达式中有好多转义字符...同学你还记得"\"的转义字符吗?),对于Python来说,这就so easy啦,只需要在声明字符的时候在前面加上一个r,就可以保留原始字符。同时Python字符串对各种系统都做了很好的兼容,所以大家就放心写吧~
整数:在Python中整数相除可得很精确的得到小数哦(学习Java的同学是不是感觉很Python很牛~),因为Python很早之前都是用来做科学计算的,当然如果你想Python和Java一样,对于整数相除还是整数的话,Python也为你提供了方法,那就是地板除,运算符为"//"
i1 = 47 i2 = 7 i3 = i1/i2 i4 = i1//i2 print(i3) print(i4)
运算结果为:
6.714285714285714 6
就像上述说道的,Python之前是用来做科学计算的,那么学习过数学的同学都知道,数学里面还有一个叫复数的东西,Python可以直接计算复数的四则运算哦~就像一开始的代码给出的c = 3 + 2.7j,就可以定义复数咯~是不是感觉Python很强大!!!
最后有必要提一下Python中的list,tuple,dict几种数据结构,list与tuple都是Python中内置的线性数据结构,不同的是list是可变的,tuple是不可变的...所谓的可变与不可变,其实就是list内部元素的引用是可变的,tuple内部元素的引用是不可变的(记住哦~只是引用不可变,因为如果在tuple中放入一个list元素,然后改变这个list元素中的元素...这也是允许的)。对于dict,在python中叫做字典,但是其实它与Java中的HashMap很像,都是通过Hash算法来快速定位元素的位置,然后逐一查找。不过list,tuple在Python特有的语法中还增加了切片功能。
L1 = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] print(L1[0:3]) L2 = ('Michael', 'Sarah', 'Tracy', 'Bob', 'Jack') print(L2[0:3])
其运算结果为:
['Michael', 'Sarah', 'Tracy'] ('Michael', 'Sarah', 'Tracy')