六个标准的数据类型:
● Number(数字)
● String(字符串)
● List(列表)
● Tuple(元组)
● Set(集合)
● Dictionary(字典)
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
Number(数字)
支持 int、float、bool、complex(复数)。
在整数除法中,除法 / 总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 // :
>>> 17 / 3 # 整数除法返回浮点型
5.666666666666667
>>>
>>> 17 // 3 # 整数除法返回向下取整后的结果
5
// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。
>>> 7//2
3
>>> 7.0//2
3.0
>>> 7//2.0
3.0
有关数字的函数可参考:函数
String(字符串)
索引值以 0 为开始值,-1 为从末尾的开始位置。
#翻转字符串
def reverseWords(input):
# 通过空格将字符串分隔符,把各个单词分隔为列表
inputWords = input.split(" ")
# 翻转字符串
# 假设列表 list = [1,2,3,4],
# list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样)
# inputWords[-1::-1] 有三个参数
# 第一个参数 -1 表示最后一个元素
# 第二个参数为空,表示移动到列表末尾
# 第三个参数为步长,-1 表示逆向
inputWords=inputWords[-1::-1]
# 重新组合字符串
output = ' '.join(inputWords)
return output
if __name__ == "__main__":
input = 'I like runoob'
rw = reverseWords(input)
print(rw)
有关字符串的函数如下:函数
List列表
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
● 1、List写在方括号之间,元素用逗号隔开。
● 2、和字符串一样,list可以被索引和切片。
● 3、List可以使用+操作符进行拼接。
● 4、List中的元素是可以改变的。
list = [1,2,3,4]
print(list[-1::-1])
#[4, 3, 2, 1]
#3X4的嵌套列表,进行翻转变为4X3的列表
matrix = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
]
#方式一
print([[row[i] for row in matrix] for i in range(4)])
#方式二
transposed = []
for i in range(4):
transposed.append([row[i] for row in matrix])
print(transposed)
#方式三
transposed1 = []
for i in range(4):
transposed1_row = []
for row in matrix:
transposed1_row.append(row[i])
transposed1.append(transposed1_row)
print(transposed1)
Tuple元组
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组与字符串类似,可以被索引且下标索引从0开始,-1 为从末尾开始的位置。也可以进行截取
定义:tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )
tup1 = () # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
string、list 和 tuple 都属于 sequence(序列)。
● 1、与字符串一样,元组的元素不能修改。
● 2、元组也可以被索引和切片,方法一样。
● 3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。
● 4、元组也可以使用+操作符进行拼接。
Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
基本功能是进行成员关系测试和删除重复元素。元素无序且不重复
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
a = set('abracadabra')
print(a)# 输出集合,重复的元素被自动去掉,集合元素顺序无序
=>{'d', 'a', 'b', 'r', 'c'}
Dictionary(字典)
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
● 1、字典是一种映射类型,它的元素是键值对。
● 2、字典的关键字必须为不可变类型,且不能重复。
● 3、创建空字典使用 { }。