目录
一、字符串的常见操作
# 字符串的定义:引号引起来的就叫做字符串
my_str = 'helllo'
# index()方法返回一个字符在字符串的位置
result = my_str.index('e')
print(result)
# 根据指定数据查找对应的下标(索引)
result = my_str.find('h')
print(result)
# index()和find()的区别:find()方法如果没有找到数据返回的数值为-1,而index()方法没有找到数据则会程序崩溃
# 统计字符串长度(个数)
result = len(my_str)
print(result)
- 字符串的定义:凡是用引号引起来的字符串,其中引号可以为单引号、双引号。
- 注意:index()和find()的区别是,find()方法如果没有找到数据返回的数值为-1,而index()方法没有找到数据则会程序崩溃
# 统计某个字符出现的次数
result = my_str.count('l')
print(result)
# 替换指定数据
result = my_str.replace('l','x')
print(result)
# 分割数据
my_str = '苹果,橘子,鸭梨'
result = my_str.split(',')
print(result)
# 判断是否以指定数据开头
my_url = "http://www.baidu.com"
result = my_url.startswith("http")
print(result)
result = my_str.endswith("xxx")
print(result)
# 需求:把字符串以指定字符串分割数据成为三部分
my_str = "aaabccc"
result = my_str.partition("b")
print(result)
# join:根据指定字符串拼接数据,前提是最终的数据是字符串
# 指定字符串数据
flag_str = "-"
my_str = 'abc'
result = flag_str.join(my_str)
print(result)
my_list = ['1','2','5']
result = flag_str.join(my_list)
print(result)
# 去除两边空格
my_str = " hello "
result = my_str.strip()
print(result)
# 去除左边空格
result = my_str.lstrip()
# 去除右边空格
result = my_str.rstrip()
# 去除指定数据
my_str = "achheha"
result = my_str.strip('a')
print(result)
二、列表
- 列表的定义,如下所示
# 列表:以 [] 表现形式的数据结合
# 列表可以放入任意类型的数据
my_list = [1,12,'555',True]
- 列表的基本操作
# 获取列表中的数据可以根据下标的获取
value = my_list[0]
print(value)
# python中的下标 : 可以有负数下标..
# 负数下标: -1 表示倒数第一个元素, -2 表示倒数第二个元素
value = my_list[-1]
print(value)
# 列表的增删改查
my_list = []
# 添加数据,向列表中追加一个数据
my_list.append(1)
print(my_list)
my_list.append("dajiahao")
print(my_list)
# 插入指定数据
my_list.insert(1,"xky")
print(my_list)
# extend() 扩展一整组数据 保留原数据类型
my_list1 = ["x","k","y"]
my_list.extend(my_list1)
print(my_list)
# 修改数据
my_list[0] = "葡萄"
print(my_list)
# 删除数据
# remove()删除指定数据
my_list.remove("xky")
print(my_list)
# 根据下标删除数据 注意下标的合法性
del my_list[0]
print(my_list)
# 根据下标删除数据并返回删除的数据,默认删除最后一个数据
result = my_list.pop()
print(result,my_list)
# 判断指定数据是否在列表里面
my_list = ['葡萄', 'xky', 'dajiahao', 'x', 'k', 'y']
result = "xky" in my_list
print(result)
result = "xky" not in my_list
print(result)
三、元组
- 元组的定义,如下所示
# 元组 以小括号 () 表现形式的数据集合,可以存进任意数据类型
# 元组只能获取数据,不能对元组数据进行修改
my_tuple = (1,4,'abc',True,1.2)
- 注意:元组中的数据只能读取,不能对其进行修改。如果修改,那么程序就会崩溃。
- 元组的其他注意事项,如下所示
# 元组不能根据下标删除数据
# del my_tuple[2]
# 不支持数据的修改
# my_tuple[0] = 2
# 当元组只有一个数据的时候,必须在数据后面加一个逗号
# my_tuple = (5,)
# print(type(my_tuple))
# 判断数据是否在这个元组中
result = 4 in my_tuple
print(result)
四、字典
- 字典的定义,如下所示
# 字典 以大括号 {} 表现的形式的 键值对 的数据集合
# 提示:key一般都是字符串,key只能是不可变类型:数字,字符串,元组.
my_dict = {'name':'张三','age':18}
- 字典的其他操作,如下所示
# 通过key获取对应的value值
value = my_dict['name']
print(value)
# 设置一个默认值 my_dict.get('name','男')
result = my_dict.get('name')
print(result)
# my_dict['name'] my_dict.get('name')
# 两个的区别 前者取值不成功会崩溃,后者会返回一个空值
# 字典的增删改查
my_dict = {}
# 添加键值对,key不在字典里面就是添加,如果在就是修改键值对
my_dict['name'] = 'zhangsan'
print(my_dict)
my_dict['age'] = 18
my_dict['sex'] = 'man'
my_dict['address'] = 'beijing'
print(my_dict)
# 字典是无序 列表是有序的
# 删除键值对
del my_dict['age']
print(my_dict)
# 如果不指定popitem()的参数就是随机删除键值对
result = my_dict.popitem()
print(result,my_dict)
# 指定删除键值对,返回key对应的value
value = my_dict.pop('sex')
print(value,my_dict)
# 判断key是否存在
result = 'age' in my_dict
print(result)
result = 'age' in my_dict.keys()
print(result)
result = 18 in my_dict.values()
print(result)
五、集合
- 集合的定义,如下所示
# 集合(set) 以 {} 表现形式的数据的集合,集合里面不能有重复的数据,集合是无序的
# 集合不能根据下标获取数据和修改数据,可以添加和删除数据
my_set = {1,4,'xky','hello'}
- 集合的其他操作及其注意事项,如下所示
# 添加数据
my_set.add(5)
print(my_set,type(my_set))
# 删除数据
my_set.remove('xky')
my_set.discard('hello')
print(my_set)
# 总结:remove()删除数据,数据必须存在,否则程序会崩溃
# discard()删除指定数据,数据不存在会忽略,程序不会崩溃
# 获取集合中的数据
for value in my_set:
print(value)
# 定义空的集合不能只使用{}
my_set = set()
my_set.add(45)
print(my_set,type(my_set))
# 集合可以对容器数据类型进行去重
my_list = [1,1,2,5,6]
my_set = set(my_list)
print(my_set)
# 列表,元组,集合三者之间可以相互转换
# list,tuple,set
六、循环
- 循环的种类:for循环和while循环
- 循环的常见操作,如下所示
# 循环 for循环 while循环 根据条件循环执行某种操作
# 1-5次循环
num = 1
while(num <= 5):
print(num,end=' ')
num += 1
print('\n-------------')
# for循环一般结合range()使用,range是一个范围
# range(1,5) 1是开始数据,5是结束数据,但是不能取到5
# range(起始数据,结束数据,步长),步长默认是1
for i in range(1,5):
print(i, end=" ")
i += 1
print('\n-------------')
# 开始位置默认是0
# 结束位置是5
# 步长默认为1
for i in range(5):
print(i,end=" ")
i += 1
print('\n-------------')
# 获取容器类型中的每一个数据使用for循环是最简单的
# 循环遍历的时候需要同时获取下标和数据可以使用enumerate
my_list = enumerate(['apple','pueple'])
for value in my_list:
print(value)
print('\n-------------')
for index,value in enumerate(['apple','pueple']):
print(index,value)
# 默认遍历的是key
# 其实遍历的就是键值对
my_dict = {'name':'bob','age':18}
for item in my_dict.items():
print(item)
七、continue和break关键字
- continue:结束本次循环,然后可以继续下次循环,整个循环不一定结束
- break: 跳出当前循环,当前循环执行结束
- 提示: continue和break不能单独使用,只能在循环里面语句里面使用
八、拆包
- 拆包的定义:通俗理解把容器类型中的每一个数据使用不同变量进行保存
# 拆包:通俗理解把容器类型中的每一个数据使用不同变量进行保存
my_str = '123'
a,b,c = my_str
print(a,b,c)
my_list = [1,5]
num1,num2 = my_list
print(num1,num2)
my_dict = {'name':'zhangsan','age':18}
key1,key2 = my_dict
print(key1,key2)
my_set = {3,5}
num1,num2 = my_set
print(num1,num2)