
Python基础数据类型操作大全:list、dict、tuple、string
小于 1 分钟
Python基础数据类型操作大全:list、dict、tuple、string
Python的内置数据类型是编程的基础,也是我们日常开发中使用频率最高的工具。在我五年的测试开发经验中,熟练掌握这些基础数据类型的操作方法,是提高编程效率的关键。
今天,我将系统地整理Python中四种核心数据类型的常见操作,这些都是在实际项目中经过反复验证的实用技巧。
list
# 列表的一些常见操作,增删改查
# 列表定义
list1 = [1,2,3,4,5,6,7,8,9]
print(list1)
# 列表的索引
print(list1[0])
print(list1[1])
# 增
# 1.append() 末尾添加
list1.append(10)
print(list1)
# 2.insert() 指定位置添加
list1.insert(0,0)
print(list1)
# 3.extend() 末尾添加多个元素
list1.extend([11,12,13])
print(list1)
# 4.+ 末尾添加多个元素
list1 = list1 + [14,15,16]
print(list1)
# 删
# 1.pop() 删除末尾元素
list1.pop()
print(list1)
# 2.pop(0) 删除指定位置元素
list1.pop(0)
print(list1)
# 3.remove() 删除指定元素
list1.remove(1)
print(list1)
# 4.del 删除指定元素
del list1[0]
print(list1)
# 5.clear() 清空列表
list1.clear()
print(list1)
# 改
# 1.直接赋值
list1 = [1,2,3,4,5,6,7,8,9]
list1[0] = 0
print(list1)
# 2.切片赋值
list1[0:3] = [0,0,0]
print(list1)
# 查
# 1.index() 查询指定元素的索引
print(list1.index(0))
# 2.count() 查询指定元素的个数
print(list1.count(0))
# 3.len() 查询列表的长度
print(len(list1))
# 4.in 查询指定元素是否在列表中
print(0 in list1)
# 5.for 查询列表中的元素
for i in list1:
print(i)
# 6.切片查询
print(list1[0:3])
# 其他
# 1.列表推导式
print([i for i in list1])
# 2.列表生成式
print([i for i in range(10)])dict
# 字典的一些常见操作
# 1. 字典的创建
dict1 = {}
dict2 = dict()
dict3 = {'a': 1, 'b': 2, 'c': 3}
dict4 = dict([('a', 1), ('b', 2), ('c', 3)])
dict5 = dict(a=1, b=2, c=3)
dict6 = dict({'a': 1, 'b': 2, 'c': 3})
dict7 = dict(zip(['a', 'b', 'c'], [1, 2, 3]))
dict8 = dict.fromkeys(['a', 'b', 'c'], 1)
dict9 = dict.fromkeys('abc', 1)
dict10 = dict.fromkeys(['a', 'b', 'c'], [1, 2, 3])
print(dict1)
print(dict2)
print(dict3)
print(dict4)
print(dict5)
print(dict6)
print(dict7)
print(dict8)
print(dict9)
print(dict10)
# 2. 字典的访问
print("*"*100)
print(f"字典的内容为:{dict3}")
print(dict3['a'])
print(dict3.get('a'))
print(dict3.get('d'))
print(dict3.get('d', 'default'))
print(dict3.keys())
print(dict3.values())
print(dict3.items())
# 3. 字典的增改
print("*"*100)
print(f"字典的内容为:{dict3}")
dict3['d'] = 4
print(dict3)
dict3.update({'a': 6})
print(dict3)
dict3.update({'e': 7})
print(dict3)
# 4. 字典的删
print("*"*100)
print(f"字典的内容为:{dict3}")
dict3.pop('a')
print(dict3)
dict3.pop('f', 'default')# 删除不存在的键,会报错
print(dict3)
del dict3['b']
print(dict3)
dict3.clear()
print(dict3)
# 5. 字典的其他操作
print("*"*100)
dict3 = {'a': 1, 'b': 2, 'c': 3}
print(f"字典的内容为:{dict3}")
print(len(dict3))
print('a' in dict3)
print('a' not in dict3)
print(dict3.copy())
print(dict3.get('a', 'default'))
print(dict3.items())
print(dict3.keys())
print(dict3.values())tuple
# Python 元组常见操作
'''
可以把元组简单理解为不可变的列表
使用的场景:
1. 当我们需要存储一些不可变的数据时,就可以使用元组
2. 当我们需要存储一些可变的数据时,就可以使用列表
3. 当我们需要存储一些不可变的数据,又需要存储一些可变的数据时,就可以使用元组和列表的结合
'''
# 元组的创建
tuple1 = ()
tuple2 = tuple()
# 1. 创建元组
# 1.1. 直接使用小括号
tuple1 = (1, 2, 3, 4, 5)
print(f"tuple1的内容为:{tuple1}")
# 1.2. 使用 tuple() 函数
tuple2 = tuple([1, 2, 3, 4, 5])
print(f"tuple2的内容为:{tuple2}")
# 1.3. 使用逗号分隔
tuple3 = 1, 2, 3, 4, 5
print(f"tuple3的内容为:{tuple3}")
# 1.4. 使用 tuple() 函数和 range() 函数
tuple4 = tuple(range(1, 6))
print(f"tuple4的内容为:{tuple4}")
# 1.5. 使用 tuple() 函数和字符串
tuple5 = tuple('hello')
print(f"tuple5的内容为:{tuple5}")
# 2. 元组的访问
# 2.1. 使用索引访问
print(f"tuple1[0]的内容为:{tuple1[0]}")
# 2.2. 使用切片访问
print(f"tuple1[0:3]的内容为:{tuple1[0:3]}")
# 2.3. 使用 for 循环访问
for i in tuple1:
print(i)
# 2.4. 使用 while 循环访问
i = 0
while i < len(tuple1):
print(tuple1[i])
i += 1
# 2.5. 使用 enumerate() 函数访问
for i, v in enumerate(tuple1):
print(i, v)
# 3. 元组的修改
# 3.1. 元组是不可变的,不能修改元组的元素
# 4. 元组的删除
# 4.1. 元组是不可变的,不能删除元组的元素
# 4.2. 可以删除整个元组
# 5. 元组的其他操作
# 5.1. 元组的长度
print(f"tuple1的长度为:{len(tuple1)}")
# 5.2. 元组的拼接
tuple6 = tuple1 + tuple2
print(f"tuple6的内容为:{tuple6}")
# 5.3. 元组的重复
tuple7 = tuple1 * 2
print(f"tuple7的内容为:{tuple7}")
# 5.4. 元组的比较
print(f"tuple1 == tuple2的结果为:{tuple1 == tuple2}")
print(f"tuple1 > tuple2的结果为:{tuple1 > tuple2}")string
# 字符串相关操作
# 字符串定义
str1 = 'hello world'
print(str1) # hello world
# 字符串的索引
print(str1[0]) # h
print(str1[1]) # e
# 字符串的切片
print(str1[0:5]) # hello
print(str1[6:]) # world
print(str1[:5]) # hello
print(str1[:]) # hello world
# 字符串的拼接
print(str1 + '!') # hello world!
print(str1 * 2) # hello worldhello world
# 字符串的长度
print(len(str1)) # 11
# 字符串的查找
print(str1.find('world')) # 6
print(str1.find('hello')) # 0
print(str1.find('!')) # -1
# 字符串的替换
print(str1.replace('world', 'python')) # hello python
# 字符串的分割
print(str1.split(' ')) # ['hello', 'world']
# 字符串的大小写转换
print(str1.upper()) # HELLO WORLD
print(str1.lower()) # hello world
# 字符串的反转
print(str1[::-1]) # dlrow olleh
# 字符串的去空格,更详细的用法可参考:https://blog.csdn.net/shizheng_Li/article/details/145780451
str2 = str1.strip()
print(str2) # hello world
# 字符串的格式化
print('hello %s' % 'world') # hello world
print('hello {}'.format('world')) # hello world
print(f'hello {str1}') # hello hello world
# 字符串的判断
print(str1.isalpha()) # False
print(str1.isdigit()) # False
print(str1.isalnum()) # True
print(str1.isspace()) # False
print(str1.islower()) # True
print(str1.isupper()) # False
print(str1.startswith('hello')) # True
print(str1.endswith('world')) # True
# 字符串的截取
print(str1[0:5]) # hello
print(str1[6:]) # world
print(str1[:5]) # hello
print(str1[:]) # hello world