python基础(一)字符串、列表、字典、元祖、集合的增删改查
一.字符串
1.在字符串中查找元素
find()
a = "hello nihao"
print(a.find("e"))
输出结果为:1
直接输入想要的子字符串,然后打印出这个子字符串在原字符串中的位置,当输入不存在的子字符串会返回-1
index()
a = "hello nihao"
print(a.index("e"))
输出结果为:1
和find()方法一样,直接输入想要查找的子字符串,会打印出这个子字符串所在的位置;不同的是如果在原字符串中没有这个值会报错ValueError
count()
a = "hello nihao"
print(a.count("l"))
输出结果为:2
在count()方法中输入想要计数的子字符串,会打印在原字符串中的数量
in关键字
a = "hello nihao"
print("h" in a)
输出结果为:True
用in关键字判断想要查找的子字符串是否在原字符串中,不在则打印出False
2.在字符串中替换元素
replace()
a = "hello nihao"
print(a.replace("l", "A",1))
输出结果为:heAlo nihao
第一个参数是要被替换的值,第二个参数是新的值,第三个参数将要被替换的次数,如果第三个值不写则会默认替换所有出现的值
3.字符串的分割与合并
split()
a = "23-05-18-36-77"
print(a.split("-"))
输出结果为:['23', '05', '18', '36', '77']
默认全部分割
a = "23-05-18-36-77"
print(a.split("-",1))
输出结果为:['23', '05-18-36-77']
输入了数字,则分割1次
join()
a = ["2023","08","15"]
print("-".join(a))
输出结果为:2023-08-15
将列表中的每个值用-拼接起来
二.列表
1.在列表中添加元素
append()
list = [1,2,3,4]
list.append(88)
print(list)
输出结果为:[1,2,3,4,88]
在列表的最后增加一个值
insert()
list = [1,2,3,4]
list.insert(1,"99")
print(list)
输出的结果为[1,99,2,3,4]
括号中第一个数为索引的值,也就是添加的位置,第二个值为要添加的值
extend()
list1 = [1,2]
list2 = [3,4]
list1.extend(list2)
print(list1)
输出结果为:[1,2,3,4]
把两个列表拼接在一起,和+的作用一样
2.在列表中删除元素
remove()
from nt import remove
list1 = [66,77,88,99]
list1.remove(66)
print(list1)
输出结果为:[77,88,99]
在remove()方法中输入要删除的值
pop()
list1 = [66,77,88,99]
list1.pop(1)
print(list1)
输出结果为:[66,88,99]
在pop()方法中加入索引的位置,删除对应的值;如果不加索引的值则删除列表中最后一个值
del语句
list1 = [66,77,88,99]
del list1[2]
print(list1)
输出结果为:[66,77,99]
在del语句中加入索引的值来删除列表中对应位置的值
3.在列表中修改元素
索引赋值
list1 = ["苹果",2,True,99]
list1[0] = "大卡车"
print(list1)
输出结果为:["大卡车",2,True,99]
通过索引0来修改列表中第一个位置的值,每次只能单个索引单个修改
切片赋值
list1 = ["锅","腕","筷子",99]
list1[0:2] = ["香蕉","草莓"]
print(list1)
输出结果为:["香蕉","草莓","筷子",99]
切片可以批量的修改列表中的位置,切片中填入的值也是要修改的值的索引的位置
4.在列表中查询元素
索引访问
list1 = ["威震天","擎天柱","大黄蜂","路障"]
print(list1[3])
输出的结果为:[路障]
直接通过索引来打印出对应位置的值
in关键字
list1 = ["威震天","擎天柱","大黄蜂","路障"]
print("威震天" in list1)
输出结果为:True
我们可以把想要的用in关键字查看该列表中是否有这个值,返回True或者False
index()
from operator import index
list1 = ["小明","小美","小智","小刚","小智"]
print(list1.index("小智"))
输出结果为:2
在index()方法后写出想要查询的值,会返回这个值第一次出现的位置
三.字典
1.在字典中添加键值对
直接赋值
dict = {"张三":90,"李四":95}
dict["王五"] = 98
print(dict)
输出结果为:{'张三': 90, '李四': 95, '王五': 98}
2.在字典中修改键值对
直接修改
dict = {"张三":90,"李四":95,"王五":98}
dict["王五"] = 60
print(dict)
输出结果为:{'张三': 90, '李四': 95, '王五': 60}
可以对字典中已经拥有的键进行赋值,将修改原本的值
3.在字典中查询键值对
直接查询
dict = {"张三":90,"李四":95,"王五":98}
print(dict["李四"])
输出结果为:95
通过键直接查询对应的值,但是当字典中不存在这个键的时候,程序会报错KeyError
get()
dict = {"张三":90,"李四":95,"王五":98}
print(dict.get("李思思", "未找到"))
输出结果为:未找到
使用get()方法,当字典中存在这个键是会直接打印出对应的值,当字典中不存在这个键时会返回第二个值或者None
4.在字典中删除键值对
del语句
dict = {"张三":90,"李四":95,"王五":98}
del dict["张三"]
print(dict)
输出结果为:{'李四': 95, '王五': 98}
pop()
dict = {"张三":90,"李四":95,"王五":98}
New_dict = dict.pop("张三")
print(dict)
print(New_dict)
输出结果为:{'李四': 95, '王五': 98}
90
这样不仅删除了张三的键值对,还可以将被删除的值用一个变量接收再打印出来
同时
使用pop()方法删除不存在的值,也可以不报错
dict = {"张三":90,"李四":95,"王五":98}
print(dict.pop("奥特曼","未找到"))
输出结果为:未找到
四.元祖
1.创建元祖
标准语法创建
yuanzu = ("张三",20,[66,77])
# 或
tuple = ()
单个元素的元祖
yuanzu = (10,)
单个元祖后必须加, 如果不加会被识别为单一数据类型
隐式定义
yuanzu = 1,2,"hello"
print(type(yuanzu))
输出结果为:<class 'tuple'>
但是在代码考虑代码可读性之下,不建议这样写
2.在元祖中访问元素
索引访问
yuanzu = ("威震天",888,["迪迦","张三"])
print(yuanzu[2])
输出结果为:['迪迦', '张三']
3.在元祖中遍历元素
遍历元祖
yuanzu = ("威震天",["迪迦","张三"],888)
for i in yuanzu:
print(i)
输出结果为:威震天
['迪迦', '张三']
888
索引遍历
yuanzu = ("威震天",["迪迦","张三"],888)
for i in range(len(yuanzu)):
print(f"索引{i}:{yuanzu[i]}")
输出结果为:索引0:威震天
索引1:['迪迦', '张三']
索引2:888
4.元祖中的内置函数
len()函数
yuanzu = ("威震天",["迪迦","张三"],888)
print(len(yuanzu))
输出结果为:3
index()函数
from operator import index
yuanzu = ("威震天",["迪迦","张三"],888)
print(yuanzu.index(888))
输出结果为:2
count()方法
yuanzu = (1,5,6,6,9,9,8)
print(yuanzu.count(6))
输出结果为:2
count()可以统计某个元素在该元祖中出现的次数
五.集合
1.创建集合
直接创建
students = {"张三","李四","王五","张三"}
print(students)
输出结果为:{'张三', '李四', ' 王五 '}
这里集合会自动去重,并且字符串王五的空格会保留
set()
nums = set([1,2,2,3])
print(nums)
输出结果为:{1, 2, 3}
这个方法适用于将列表元祖等数据类型转为集合,但会自动去重
空集合创建
空集合 = set()
2.在集合中添加元素
add()
students = {"张三","李四","王五"}
students.add("赵六")
print(students)
可能输出结果为:{'张三', '李四', '王五','赵六'}
集合无序所以每次输出结果不一样
update()
students = {"张三","李四","王五"}
students.update(["赵六","哈哈"],"陈七")
print(students)
可能输出结果为:{'李四', '赵六', '陈', '王五', '哈哈', '七', '张三'}
必须传入可迭代对象,可以同时添加不同类型的元素
3.在集合中删除元素
remove()
from nt import remove
students = {"张三","李四","王五"}
students.remove("张三")
print(students)
可能输出的结果为:{'李四', '王五'}
删除指定的元素,如果元素不存在会报错
discard()
students = {"张三","李四","王五"}
students.discard("张三")
print(students)
可能输出的结果为:{'李四', '王五'}
安全删除,当元素不存在时不会报错
pop()
students = {"张三","李四","王五"}
students.pop()
print(students)
可能输出的结果为:{'张三', '王五'}
因为集合是无序的,所以pop会随机删除一个值,被删除的值也可以用变量接收,然后打印出来
4.集合的运算
交集 &
a = {1,2,3}
b = {3,4,5}
print(a & b)
输出结果为:{3}
会找到两个集合共有的元素
并集 |
a = {1,2,3}
b = {3,4,5}
print(a | b)
输出结果为:{1,2,3,4,5}
合并两个集合,自动去重
差集 -
a = {1,2,3}
b = {3,4,5}
print(a - b)
输出结果为:{1,2}
找到在集合a但不在集合b的元素
对称差集 ^
a = {1,2,3}
b = {3,4,5}
print(a ^ b)
输出结果为:{1,2,4,5}
找到两个集合独有的元素
集合的应用场景:数据去重,社交网络中利用交集找出共同好友
更多推荐




所有评论(0)