'''
for 迭代循环
break continue
'''
# for i in range(1,10,2):
# print(i)
'''
列表 可变数据类型,可以增删改查:
append添加
pop删除
list不要做变量名
'''
# li = [5,7,8,9,6]
# li[1] = 4
# print(li)
# li[1:3] = 5,6
# print(li)
'''
元组:
不可变类型 tuple()
'''
# # 读取元组中的元素
# tu = (5,7,8,9)
# print(tu)
# print(tu[1])
'''
字符串:(str)不可变类型
单引号、双引号、三引号
字符串无法对本身进行修改,必须重新去赋值
'''
'''字符串的修改'''
# # 字符串可以索引取值
# str1 = 'Hello Python'
# print(str1[4])
#
# # 字符串可以切片取值[下标:下标]
# print(str1[0:5])
# print(str1[0:5:2])
#
# # 字符串添加
# # +、join
# str1="Hello"
# str2="python"
# str3 = str1+str2
# print(str1+str2) # 打印Hellopython
#
# # replace()修改,第一个参数是要修改的值,第二个参数是新的元素,第三个参数是要替换的个数
# str1.replace('H','h')
# print(str1) # 打印Hello
# print(str1.replace('H','h')) # 打印hello
# str3 = str1.replace('l','*')
# print(str3) # 打印He**o
# str4 = str1.replace('l','*')
# print(str4) # 打印He**o
#
# # 字符串的修改
# # 字符串全部转大写
# str1 = 'python'
# str1.upper()
# print(str1) # python
# # 若要得到改变的字符串数据,则需要一个新变量接收
# # 字符串全大写
# str1 = str1.upper()
# print(str1) # PYTHON
# # 字符串全小写
# str1 = str1.lower()
# print(str1) # python
#
# # 字符串去空格
# str1 = ' 123456 '
# str = str1.strip()
# print(str) # 打印123456
# str = str1.lstrip() # 去除左边的空格
# print(str) # 打印123456
# str = str1.rstrip() # 去除右边的空格
# print(str) # 打印 123456
# str2 = ' 123 456 '
# print(str2.strip()) # 打印123 456
#
# # split()切割,同时作为切割条件的元素,就被删除了
# # 第一个参数切割元素,第二个参数切割次数,打印的是列表
# print(str2.split(' ')) # 打印['', '', '123', '', '', '456', '', '']
# str3 = 'This is Python'
# str4 = str3.split(' ')
# print(str4) # 打印['This', 'is', 'Python']
# print(str3.split(' ',1)) # 打印['This', 'is Python']
#
# # split可以配合join方法 拼接回字符串
# print(' '.join(str4))
#
# # 字母小写改大写
# str1 = 'this is python'
# print(str1.capitalize()) # 首字母大写,打印This is python
# print(str1.title()) # 单词首字母大写,标题形式,打印This Is Python
'''字符串的查找'''
str1 = 'this is python'
# find查找元素的下标,默认从0开始,第一个参数是查找的元素,第二个参数是表示下标查找的位置(从第几个开始)
print(str1.find('t'))
print(str1.find('t',1))
# count()统计
li = [5,7,7,8,8,9,9]
print(li.count(7)) # 统计元素7出现的次数,2
print(str1.count('t')) # 统计字符串中t出现的次数,2
# len()查询长度,空格也算一个元素
print(len(li)) # 打印列表的长度,7
print(len(str1)) # 打印str1的长度14
# find查找不存在的元素会返回-1
str1 = 'this is python'
index = 0
for i in str1:
index = str1.find('t',index) # 可以用index去接收查找到元素的下标
if index == -1:
break
else:
print(index,end=' ')
index += 1
# isdigit()判断字符串是不是全数字
str1 = '123456789'
print(str1.isdigit()) # 全部都是数字,返回True
# isalpha()判断字符串是不是纯字母
str2 = 'hello python'
print(str2.isalpha()) # False
# 判断islower()是不是全部小写
print(str2.islower())
'''
字符串的转义:
\n 换行
\t 水平制表符
\\ 转义反斜杠
\' 转义单引号
\0 转义空字符(空格)
\a 系统提示音(需要到cmd去听)
'''
# str1 = '''THIS IS
# PYTHON'''
# print(str1) # 打印THIS IS\nPYTHON
# str1 = 'THIS\tpython'
# print(str1) # 打印THIS python
# str1 = 'THIS\\npython'
# print(str1) # 打印THIS\npython
# str1 = 'THIS\'npython'
# print(str1) # 打印THIS'npython
# str1 = 'THIS\0python'
# print(str1) # 打印THIS python
# # r取消转义
# str1 = r'THIS\0python'
# print(str1)
'''
encode(encoding='utf-8') 声明编码格式
bd.decode('utf-8') 声明解码格式
'''
str1 = '陈宏'
bd = str1.encode(encoding='utf-8')
print(bd) # 编码结果
print(bd.decode('GBK')) #解码结果
'''
字典和集合
字典{}dict:
以键值对数据形式存在
键是不变的字符串,并且是唯一的
值可以是任何数据类型
'''
# dic = {} # 定义一个空字典
# id = '20210922'
# name = 'CH'
# dic = {id:name}
# print(dic)
# dic = {'name':'CH','age':'20','sex':'nan'}
# print(dic)
#
# # 字典的增删改查
# # 字典根据键取值
# print(dic['name']) # 打印CH
# #print(dic['size']) # 报错
# # get()方法查找到没有键存在时不会报错,只是无返回值
# print(dic.get('name')) # 打印CH
# print(dic.get('size')) # 打印None
# print(dic.get('size','size不存在')) # 查找不到size时,会打印size不存在
#
# # 字典[]修改,键有则改,无则增
# print(dic['age'])
# dic['age'] = 21
# print(dic)
# dic['weight'] = 140
# print(dic) # 打印{'name': 'CH', 'age': 21, 'sex': 'nan', 'weight': 140}
# # 字典setdefault()修改,键有则不变,无则增
# dic.setdefault("name","HC")
# print(dic) # 打印{'name': 'CH', 'age': 21, 'sex': 'nan', 'weight': 140}
# dic.setdefault('with',50)
# print(dic) # 打印{'name': 'CH', 'age': 21, 'sex': 'nan', 'weight': 140, 'with': 50}
#
# # 字典pop()删除,需要传值
# dic.pop('with')
# print(dic) # 打印{'name': 'CH', 'age': 21, 'sex': 'nan', 'weight': 140}
# # 字典popitem()删除,不需要传值,默认从后往前删
# dic.popitem()
# print(dic) # 打印{'name': 'CH', 'age': 21, 'sex': 'nan'}
# # 字典clear()清空
# dic.clear() # 表示清空
# print(dic) # 打印{}
#
# dic = {'name':'CH','age':'20','sex':'nan'}
# print(type(dic)) # 打印<class 'dict'>
# dic1 = dic.copy()
# print(dic1) # 打印{'name': 'CH', 'age': '20', 'sex': 'nan'}
# print(dic.keys()) # 返回键
# print(dic.values()) # 返回值
# print(dic.items()) # 以元组形式返回键值对
#
# # 字典里的值可以是任意数据类型
# dic1 = {'name':[1,5],'age':True}
'''
集合:
集合的每个值是唯一的,并且是无序的(切记(无序))
字典key也具有同样的特性
交集&,并集|,差集-
'''
set1 = {5,9,8,7}
print(type(set1)) # <class 'set'>
tu = (2)
print(type(tu)) # <class 'int'>
tu = (2,)
print(type(tu)) # <class 'tuple'>
set2 = {5,7,8,5,7,8}
print(set2) # {8, 5, 7}
set1 = {1,2,3,4,5,6}
set2 = {9,8,7,4,5,6}
set4 = set1&set2
print(set4) # 交集{4, 5, 6}
set5 = set1|set2
print(set5) # 并集{1, 2, 3, 4, 5, 6, 7, 8, 9}
set6 = set1-set2
print(set6) # 差集{1, 2, 3}
set7 = set2-set1
print(set7) # 差集{8, 9, 7}
# 集合的增删改查
set1 = {1,2,3,4,5,6}
# 集合添加元素
set1.add(7)
print(set1) # 打印{1, 2, 3, 4, 5, 6, 7}
# update(),无则增
set1.update({1,22})
print(set1) # 打印{1, 2, 3, 4, 5, 6, 7, 22}
# pop()删除最前面的一个元素
set1.pop()
print(set1) # 打印{2, 3, 4, 5, 6, 7, 22}
# remove指定元素删除
set1.remove(22)
print(set1) # 打印{2, 3, 4, 5, 6, 7}
'''
总结:
可变对象:list、dict、set
不可变对象:数值、str、元组
'''
文章到这里就结束了!希望大家能多多支持Python(系列)!六个月带大家学会Python,私聊我,可以问关于本文章的问题!以后每天都会发布新的文章,喜欢的点点关注!一个陪伴你学习Python的新青年!不管多忙都会更新下去!一起加油!