1. 布尔类型
在Python中,布尔值使用常量 True 和 False 表示,通常用在if、while等语句的判断表达式计算中。
条件表达式的计算规则如下:
- None和False常量表达式返回False;
- 值为0的数值类型表达式返回False,如:0、0.0、0j、Decimal(0)、Fraction(0,1);
- 空的集合或序列返回False,如:”、()、[]、{}、set()、range(0);
- 对象定义了 __bool__() 且该方法返回False,或者其定义了 __len__() 方法且该方法返回0,此时对象返回False;
- 非以上情况下表达式均返回True。
2. 数值类型
数值类型用于存储数值,它们属于不可改变类型,当给一个数值类型变量赋新的值时,会给该变量绑定一个新的值。Python支持一下三种数值类型:
- int:有符号整数类型;
- float:浮点数类型;
- complex:复数类型。
其中:整数没有精度限制;浮点数通常使用的是C语言中的double类型实现的,其进度可以通过 sys.float_info 来查看;复数由实数部分和虚数部分构成,两部分都是浮点数。可以使用标准库中的fractions来处理有理数,使用decimal来处理用户定义精度的浮点数计算。
3. 字符串类型
在Python中,字符串是由一连串的字符通过引号括起来表示的,其本身是一个字符集合,是不可改变类型,当修改字符串时,字符串对象将被重新赋值。
1 2 3 4 5 6 7 8 |
#!/usr/bin/python3 str = 'Hello World!' print (str) # Hello World! print (str[0]) # H print (str[2:5]) # llo print (str[2:]) # llo World! print (str * 2) # Hello World!Hello World! print (str + "TEST") # Hello World!TEST |
4. 列表类型
list是Python中使用最灵活也最频繁的数据类型,和C语言中的数组类似,不同的是list的数据项可以是不同的数据类型。
1 2 3 4 5 6 7 8 9 10 |
#!/usr/bin/python3 list1 = [ 'abc', 123, 'apple', 18] print (list1) # [ 'abc', 123, 'apple', 18] print (list1[0]) # abc print (list1[1:3]) # [123, 'apple'] print (list1[2:]) # ['apple', 18] print (list1 * 2) # ['abc', 123, 'apple', 18, 'abc', 123, 'apple', 18] print (list1 + ['def', 456]) # ['abc', 123, 'apple', 18, 'def', 456] list1[0]= 'ABC' print (list1[0]) # ABC |
5. 元组类型
和list相似,不同之处在于:定义list时使用中括号包围元素,定义tuple时使用小括号包围元素;list的元素可以更新,tuple的元素不能更新。
1 2 3 4 5 6 7 8 |
#!/usr/bin/python3 tuple1 = ('abc', 123, 'apple', 18) print (tuple1) # ('abc', 123, 'apple', 18) print (tuple1[0]) # abc print (tuple1[1:3]) # (123, 'apple') print (tuple1[2:]) # ('apple', 18) print (tuple1 * 2) # ('abc', 123, 'apple', 18, 'abc', 123, 'apple', 18) print (tuple1 + ('def', 456)) # ('abc', 123, 'apple', 18, 'def', 456) |
6. 字典类型
Python中的字典类型是一种hash表类型,由键值对组成,其中键通常使用整型或字符串类型,值可以是任意类型的Python对象。
1 2 3 4 5 6 7 8 9 |
#!/usr/bin/python3 dict1 = {'name': 'jack','id':1234, 'title': 'top coder'} dict1[2]= 222 print (dict1['name']) # jack print (dict1[2]) # 222 print (dict1) # {'name': 'jack', 'id': 1234, 'title': 'top coder', 2: 222} print (dict1.keys()) # dict_keys(['name', 'id', 'title', 2]) print (dict1.values()) # dict_values(['jack', 1234, 'top coder', 222]) |