注,部分内容参考:https://www.runoob.com/python3/python3-data-type.html
Python中有6个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
其中,
- 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
- 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)
1.Number(数字):
数字的类型与其他的编程语言相似,int, float,bool等
判断数字的类型主要有两种 type,isinstance
#判断类型有两种
#type,isinstance
num = 12
print(type(num))
print(isinstance(num, int))
输出为:
True
2.String(字符串):
1. 字符串用单引号 ' 或双引号 " 括起来
str[0] 索引从0开始
str[a:b],包含a,不包含b
stra = 'Python'
print (stra) # 输出字符串
print (stra[:]) # 输出所有字符串
print (stra[0]) # 输出字符串第一个字符
print (stra[2:5]) # 输出从第三个开始到第五个的字符
print (stra[2:]) # 输出从第三个开始的后的所有字符
print (stra[:-1]) # 输出从第一个到倒数第2个字符,不包含最后一个
print (stra * 2) # 输出字符串两次
print ("Hello" + stra) # 连接字符串
输出:
Python
Python
P
tho
thon
Pytho
PythonPython
HelloPython
2. 调整字符串大小写
#修改字符串大小写字母
stra = 'hello pYthon'
print(stra.title())#每个单词首字母大写,其他字母小写
print(stra.upper())#所有大写
print(stra.lower())#所有小写
输出为:
Hello Python
HELLO PYTHON
hello python
3.List(列表)
列表是写在方括号 [] 之间、用逗号分隔开的元素列表
列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表
1.选择列表元素 (同字符串选择方法类似)
list1 = [ 'hello', 1 ,'python', 'love', 10.5 ]
list2 = ['jing',124]
print (list1) # 输出完整列表
print (list1[:]) # 输出完整列表
print (list1[0]) # 输出列表第一个元素
print (list1[1:3]) # 从第二个开始输出到第三个元素
print (list1[2:]) # 输出从第三个元素开始的所有元素
print (list1[:-2]) # 输出从第一个到倒数第二个,不包含倒数第2个
print (list2 * 2) # 输出两次列表
print (list1 + list2) # 连接列表
输出:
['hello', 1, 'python', 'love', 10.5]
['hello', 1, 'python', 'love', 10.5]
hello
[1, 'python']
['python', 'love', 10.5]
['hello', 1, 'python']
['jing', 124, 'jing', 124]
['hello', 1, 'python', 'love', 10.5, 'jing', 124]
2.删除、插入、改变列表元素
修改元素
list1 = [0,1,2,3,4,5,6]
list1[1:3] = ['a','b'] #直接赋值修改元素
print(list1)
list1[1:3] = ['a']#直接赋值修改元素,如修改的元素少于修改的数量,则视为删除未表示出来的元素
print(list1)
输出:
[0, 'a', 'b', 3, 4, 5, 6]
[0, 'a', 3, 4, 5, 6]
插入元素 : insert append两种
list1 = [0,1,2,3,4,5,6]
list1.insert(1,'a')#插入元素,在位置1插入元素
print(list1)
list1.append('b')#在末尾插入元素,一次只能插入一个
print(list1)
输出:
[0, 'a', 1, 2, 3, 4, 5, 6]
[0, 'a', 1, 2, 3, 4, 5, 6, 'b']
删除元素:del pop 两种
list1 = [0,1,2,3,4,5,6]
del list1[4] #删除元素,按元素删除,不按顺序
print(list1)
del_data = list1.pop() #删除最后一个元素,一次只能删除一个,删除的元素可以保留
print(list1)
print(del_data)
输出:
[0, 1, 2, 3, 5, 6]
[0, 1, 2, 3, 5]
6
4.Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开
元组可以包含可变的对象,如列表等
1.选择元组
#选择元组
tuple1 = ( 'abcd', 1 , 1.5, 'python', 50 )
tuple2 = (1234, 'hello')
print (tuple1) # 输出完整元组
print (tuple1[:]) # 输出完整元组
print (tuple1[0]) # 输出元组的第一个元素
print (tuple1[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple1[2:]) # 输出从第三个元素开始的所有元素
print (tuple1[:-2]) # 输出从第一个到倒数第二个,不包含倒数第2个
print (tuple2 * 2) # 输出两次元组
print (tuple1 + tuple2) # 连接元组
输出:
('abcd', 1, 1.5, 'python', 50)
('abcd', 1, 1.5, 'python', 50)
abcd
(1, 1.5)
(1.5, 'python', 50)
('abcd', 1, 1.5)
(1234, 'hello', 1234, 'hello')
('abcd', 1, 1.5, 'python', 50, 1234, 'hello')
2.修改元组变量
元组不能被修改,但可以修改元组变量
#修改元组变量
tuple1 = (1,2,3,4)
print('原始数据',tuple1)
tuple1 = ('a','b','c','d')
print('更改后的数据',tuple1)
3.构建特殊数组
构建空元素和1个元素
tup1 = () # 空元组
print(tup1)
tup2 = (20,) # 一个元素,需要在元素后添加逗号
print(tup2,type(tup2))
tup3 = (20) #不加逗号,则变为int型数据
print(tup3,type(tup3))
输出:
()
(20,)
20
5.Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
基本功能是进行成员关系测试和删除重复元素。
可以使用大括号 { } 或者 set() 函数创建集合
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
print(student) # 输出集合,重复的元素被自动去掉
# 成员测试
if 'Rose' in student :
print('Rose 在集合中')
else :
print('Rose 不在集合中')
# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')
print(a)
print(a - b) # a 和 b 的差集
print(a | b) # a 和 b 的并集
print(a & b) # a 和 b 的交集
print(a ^ b) # a 和 b 中不同时存在的元素
输出:
{'Jim', 'Jack', 'Rose', 'Mary', 'Tom'}
Rose 在集合中
{'a', 'd', 'c', 'r', 'b'}
{'b', 'r', 'd'}
{'b', 'z', 'a', 'm', 'l', 'c', 'd', 'r'}
{'a', 'c'}
{'b', 'z',
6.字典(dictionary)
字典是无序的对象集合,{ } 标识, 键(key) : 值(value)
通过键来获取,键只有唯一一个
构造字典
#字典构造的两种方法
#方法1:
dict = {}
dict[1] = 'lesson1'
dict[2] = 'lesson2'
print(dict)
print(dict[1])
#方法2:
dict2 = {'name': 'jing','age':22, 'grade': '2'}
print (dict2) # 输出完整的字典
print (dict2.keys()) # 输出所有键
print (dict2.values()) # 输出所有值
输出:
{1: 'lesson1', 2: 'lesson2'}
lesson1
{'age': 22, 'grade': '2', 'name': 'jing'}
dict_keys(['age', 'grade', 'name'])
dict_values([22, '2', 'jing'])
改变字典中值
#改变键值
dict1 = {'name': 'jing','age':22, 'grade': '2'}
dict1['age'] = '25'
print(dict1)
输出:
{'age': '25', 'grade': '2', 'name': 'jing'}
删除键值
#删除键值
dict1 = {'name': 'jing','age':22, 'grade': '2'}
del dict1['name']
print(dict1)
输出:
{'age': 22, 'grade': '2'}
最后,推荐一波自己的公众号,Python机器学习进阶之路, 定期总结更新python,机器学习,深度学习相关知识