Hello,大家好。本期来和大家一起学习一下Python数据类型和相关方法的知识。
Python基本数据类型
Python总共有六大基本数据类型。
不可变数据类型:
-
Number(数字)
-
String(字符串)
-
Tuple(元组)
可变数据类型:
-
List(列表)
-
Dictionary(字典)
-
Set(集合)
数字类型
不可变类型,值变,id也变。改变需要重新赋值
n = 2
print(id(n)) # 2055485745488
n = 3
print(id(n)) # 2055485745520
int(整数)、float(小数)、complex(复数)、bool(布尔类型)
# 可以使用 int()、float()、complex() 方法从一种类型转换为另一种类型:
x = 10 # int
y = 6.3 # float
z = 1j # complex
# 把整数转换为浮点数
a = float(x)
# 把浮点数转换为整数
b = int(y)
# 把整数转换为复数:
c = complex(x)
字符串类型
不可变类型,值变,id也变。改变需要重新赋值
msg = 'hello world'
print(id((msg))) # 2209383614256
msg = 'wello world'
print(id(msg)) # 2209391117424
字符串格式化
a = '学校'
b = 18
# 1.format()方法
print('my name is {},my age is {}'.format(a, b)) # my name is 学校,my age is 18
# 2.f格式化
print(f'my name is {a},my age is {b}') # my name is 学校,my age is 18
# 3.%格式化
print(f'my name is %s,my age is %d' % (a, b)) # my name is 学校,my age is 18
字符串拼接
str1 = '真正的勇士'
str2 = '敢于直面惨淡的人生'
str3 = '敢于正视淋漓的鲜血'
list1 = [str1, str2, str3]
print(''.join(list1)) # 真正的勇士敢于直面惨淡的人生敢于正视淋漓的鲜血
print(','.join(list1)) # 真正的勇士,敢于直面惨淡的人生,敢于正视淋漓的鲜血
字符串大小写
msg1 = 'abC'
print(msg1.lower()) # abc
print(msg1.upper()) # ABC
print(msg1.capitalize()) # Abc
字符串切割
msggg = 'root:123456'
print(msggg.split(':')[0]) # root
字符串替换
msgggg = 'hello'
print(msgggg.replace('e', 'a', 1)) # hallo
元组类型
不可变类型,值变,id也变。改变需要重新赋值
t = (1, 2, '大海', (2, 3), ['红海', 2, 3])
print(id(t)) # 2899688255632
t[0] = 5 # TypeError: 'tuple' object does not support item assignment
t = (5, 2, '大海', (2, 3), ['红海', 2, 3])
print(id(t)) # 2899692729184
元组方法和列表方法类似。
列表类型
可变类型,值变,id不变。改变不需要重新赋值
L = ['666', 1, 1.2, [1.22, '小海']]
print(id(L)) # 2571026816640
L[0] = '红海'
print(id(L)) # 2571026816640
列表查找某元素个数
L = ['666', 1, 1.2, [1.22, '小海']]
print(L.count('666')) # 1
列表排序
L = [1, 3, 2, 5]
L.sort() / L.sort(reverse=False) / sorted(L)
print(L) # [1, 2, 3, 5]
L.sort(reverse=True)
print(L) # [5, 3, 2, 1]
列表插入元素
L = ['666', 1, 1.2, [1.22, '小海']]
L.insert(1, '黄海')
print(L) # ['666', '黄海', 1, 1.2, [1.22, '小海']]
列表查找某元素下标
L = ['666', 1, 1.2, [1.22, '小海']]
print(L.index('666')) # 0
字典类型
可变类型,值变,id不变。改变不需要重新赋值
info = {'name': '666', 'age': 18}
print(id(info)) # 1859481735936
info['addr'] = 'changsha'
print(id(info)) # 1859481735936
字典添加键值对
info = {'name': '666', 'age': 18}
info.update({'weigh': '120'})
print(info) # {'name': '666', 'age': 18, 'weigh': '120'}
字典取出所有的key或values
info = {'name':'666','age':18}
print(list(info.keys())) # ['name', 'age']
print(list(info.values())) # ['666', 18]
print(list(info.items())) # [('name', '666'), ('age', 18)]
字典排序
sys = {'name': 1, 'age': 2, 'gender': 3}
# 根据字典的key排序
new_sys = sorted(sys)
print(new_sys) # ['age', 'gender', 'name']
# 根据key的升序排列,把key value都打印出来
new_sys1 = sorted(sys.items(), key=lambda d: d[0], reverse=False)
print(new_sys1) # [('age', 2), ('gender', 3), ('name', 1)]
集合类型
可变类型,值变,id不变。改变不需要重新赋值.元素类型必须都为不可变类型
sss = {'a', 1, ('aaa', 'ccc')}
print(id(sss)) # 3097751664896
sss.add('小海')
print(id(sss)) # 3097751664896
sss = {'a', 1, [1, 2], ('aaa', 'ccc')}
print(sss) # TypeError: unhashable type: 'list'
集合添加元素
s = {1, 2, 3}
s.add('小海')
print(s) # {1, 2, 3, '小海'}
集合删除某元素
s = {1, 2, 3, '小海'}
s.remove('小海')
print(s) # {1, 2, 3}
更多数据类型的方法可以点击这里进行查询哦.(https://www.runoob.com/python3/python3-data-type.html)