1. Numbers(数字)
数字数据类型存储数值,他们是不可变的数据类型,这意味着一个新分配的数据类型的结果值。
例如:
var1 = 1
var2 = 10
Python支持4种不同的数据类型。
-int 有符号整数
-long 长整数
-float 浮点类型
-complex 复数
int | long | float | complex |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32.3+e18 | .876j |
-0490 | 535633629843L | -90. | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
2. String(字符串)
在Python中的字符串被确定为一组连续的字符在引号之间。 Python允许在任何对单引号或双引号。串的子集,可以使用切片操作符可采用([]和[:]),索引从0开始
var = 10
sentence = "I love China!"
print sentence[7:]
print sentence[0]
print sentence*2
print sentence[-1]
print sentence+"Test"
产生的结果如下:
China!
I
I love China!I love China!
!
I love China!Test
3. List(列表)
列表是最通用的Python复合数据类型。列表中包含以逗号分隔,并在方括号[]包含的项目。在一定程度上,列表相似C语言中的数组,它们之间的一个区别是,所有属于一个列表中的项目可以是不同的数据类型的。
存储在一个列表中的值可以使用切片操作符来访问[]和[:]用索引从0开始,在列表的开始位置和结束为-1。加号(+)符号列表连接运算符,星号(*)重复操作。
list = ['abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print list # Prints complete list
print list[0] # Prints first element of the list
print list[1:3] # Prints elements starting from 2nd till 3rd
print list[2:] # Prints elements starting from 3rd element
print tinylist * 2 # Prints list two times
print list + tinylist # Prints concatenated lists
产生的结果如下:
['abcd', 786, 2.23, 'john', 70.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.2, 123, 'john']
4. Tuple(元组)
元组是类似于列表中的序列数据类型。一个元组由数个逗号分隔的值。不同于列表,不过,元组圆括号括起来。
列表和元组之间的主要区别是:列表括在括号[]和它们的元素和大小是可以改变的,而元组在圆括号(),不能被更新。元组可以被认为是只读列表。例如:
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
print tuple # Prints complete list
print tuple[0] # Prints first element of the list
print tuple[1:3] # Prints elements starting from 2nd till 3rd
print tuple[2:] # Prints elements starting from 3rd element
print tinytuple * 2 # Prints list two times
print tuple + tinytuple # Prints concatenated lists
产生的结果如下:
('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')
尝试对tuple里面的值进行赋值,查看结果:
tuple[2] = 1000 # Invalid syntax with tuple
list[2] = 1000 # Valid syntax with list
编辑完成,一般的编译器均会提示tuple哪一行的语法错误,如果执行,则提示错误:
TypeError: 'tuple' object does not support item assignment
5. Dictionary(字典)
Python字典是一种哈希表型。他们像关联数组或哈希在Perl中一样,由键 - 值对组成。字典键几乎可以是任何Python类型,但通常是数字或字符串。值可以是任意Python的对象。
字典是由花括号括号({}),可分配值,并用方括号([])访问。例如:
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # Prints value for 'one' key
print dict[2] # Prints value for 2 key
print tinydict # Prints complete dictionary
print tinydict.keys() # Prints all the keys
print tinydict.values() # Prints all the values
产生的结果如下:
This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']
6. Boolean(布尔类型)
python的布尔类型有两个值:True和False(注意大小写要区分)
数据类型转换
有时候,可能需要执行的内置类型之间的转换。类型之间的转换,只需使用类名作为函数。
有几个内置的功能,从一种数据类型进行转换为另一种。这些函数返回一个表示转换值的新对象。
函数 | 描述 |
---|---|
int(x [,base]) | 将x转换为一个整数。基数指定为base,如果x是一个字符串。 |
long(x [,base] ) | 将x转换为一个长整数。基数指定为base,如果x是一个字符串。 |
float(x) | 将x转换到一个浮点数。 |
complex(real [,imag]) | 创建一个复数。 |
str(x) | 转换对象x为字符串表示形式。 |
repr(x) | 对象x转换为一个表达式字符串。 |
eval(str) | 计算一个字符串,并返回一个对象。 |
tuple(s) | 把s转换为一个元组。 |
list(s) | 把s转换为一个列表。 |
set(s) | 把s转换为一个集合。 |
dict(d) | 创建一个字典。 d必须的(键,值)元组序列。 |
frozenset(s) | 把s转换为冻结集。 |
chr(x) | 整数转换为一个字符。 |
unichr(x) | 整数转换为一个Unicode字符。 |
ord(x) | 转换单个字符为整数值。 |
hex(x) | 将整数转换为十六进制字符串。 |
oct(x) | 将整数转换为以八进制的字符串。 |