admin管理员组

文章数量:1026989

第三章笔记

一.  

1.字符串:
         概念:由0个或多个字符组成的有序字符序列
                    由' ' 或" "表示
                    使用[ ]获取一个或单个字符 例如:[-1:5]
     2.索引:返回字符串中单个字符
        切片:返回字符串中一段字符子串 
        左开右闭   正向递增  反向递减
       3.转义符:
           "\b"回退 
           "\n"换行(光标移动到下行首) 
           "\r" 回车(光标移动到本行首)
       4. 常用函数
          len()获取长度  str() 把任意数据类型转换成string
           Type()输出数据类型的
       5.lower() 转换小写   upper()转换大写   split()拆分
         replace   str中的任意一个子串替换成新的子串  返回字符串
       6. 格式化:
             %s,表示字符串;
             %d,表示整数;
             %f,表示浮点数
             %,表示一个占位符
       7.         .format(<逗号分隔的参数>)
二.

1.List(列表)
          列表是序列类型的一种扩展
          列表是一种序列类型,创建后可以随意被修改
          使用方括号 [] 或list() 创建,元素间用逗号 , 分隔
          列表中各元素类型可以不同,无长度限制

  • list01 = [1,2,3,4]"""[] 空列表list() 里面什么都没有,创建空列表list(["张三","李四"])"""list02 = list() #[]list03 = list(["张三","李四"])print(list01)print(list02)print(list03)list04 = [12.3,10,3.14e2,"张三"]print(list04) #[12.3, 10, 314.0, '张三']

2.常用函数:
          len(列表) 统计列表中元素的个数
          sum(列表) 求和
          max(列表) 最大值
          min(列表) 最小值

#创建list
list01 = [1,2,5,7,-2,-9]#len(列表) 统计列表中元素的个数
a = len(list01)
print(a) #6#sum(列表) 求和
b = sum(list01)
print(b) #4#max(列表) 最大值
c= max(list01)
print(c) #7
#min(列表) 最小值
d = min(list01)
print(d) #9

3.增:
          list.insert(index,值)  根据下标进行插入数据
          list.append(值) 在末尾插入

#创建
list01 = ["zz","dd,"hh","bb","pp"]#list.insert(index,值)  根据下标进行插入数据
list01.insert(1,"yy")
print(list01)  #['zz', 'yy', 'dd', 'hh', 'bb', 'pp
#list.append(值) 在末尾插入
list01.append("lisa")
print(list01) # ['zz', 'yy', 'dd', 'hh', 'bb', 'pp', 'lisa']


4.删:
          list.pop(index) 删除指定位置的数据
          list.remove(值) 删除值
          list.clear() 删除所有数据

#创建
list01 = ["zz","dd","hh","lisa","bb","pp","zz"]#list.pop(index) 删除指定位置的数据
list01.pop(3)
print(list01)  #['zz', 'dd', 'hh', 'bb', 'pp', 'zz']#list.remove(值) 删除值,但是他删除的是值第一次出现的位置
list01.remove("zz")
print(list01) #['dd', 'hh', 'bb', 'pp', 'zz']#list.clear() 删除所有数据
list01.clear()
print(list01) #[]


5.改:
         List[i] = 值(要修改的值

#重新进行赋值
list01[3] = "yy"
print(list01)  #['zz', 'dd', 'hh', 'yy', 'bb', 'pp', 'zz']


6.查:
         查询所有 ---直接打印列表名字
         查询单个值      利用[index]进行查询 index-->从0开始
         查询多个值      [start:stop]   左开右闭

#创建list
list01 = [1,2,5,7,-2,-9]#查询所有 ---直接打印列表名字
print(list01)
"""查询单个值利用[index]进行查询 index-->从0开始
"""
print(list01[1])  #2
"""

三:

元组 (tuple)
      1.概念:
        元组是一种序列类型,一旦创建就不能被修改  不能增删改
        使用小括号 () 或 tuple() 创建,元素间用逗号 , 分隔

创建

  • 使用小括号 () 或 tuple() 创建,元素间用逗号 , 分隔

  • #创建

    tuple01 = (1,2,3)tuple02 = tuple() #空元组  ()tuple03 = tuple((5,6,7))print(tuple01)print(tuple02)print(tuple03)

四  set集合

概念

集合是多个元素的无序(没有下标)组合

集合类型与数学中的集合概念一致

集合元素之间无序,每个元素唯一,不存在相同元素

集合元素不可更改,不能是可变数据类型    

为什么? 无序唯一

创建

  • 集合用大括号 {} 表示,元素间用逗号分隔

  • 建立集合类型用 {} 或 set()

  • 建立空集合类型,必须使用set()

  • ● #创建
    ● set01 = {1,2,3,4,5}
    ● set02 = set() #set()
    ● set03 = set({9,10,11})
    ● print(set01)
    ● print(set02) 
    ● print(set03)

  • 空列表 []

  •  空元组 ()

  •  空字典 {}

  •  空集合 set()

  •   原因是字典的创建也是{},两者冲突了

  •    所以我们的空集合是set(),创建空集合的时候必须使用set()

  • ● print(type({})) #<class 'dict'>
    ● print(type(set())) #<class 'set'>

  • set.add(数据) 添加一个数据  不也能添加已有的数据,虽然不报错,但是不显示

    #创建

    set01 = {"花木兰","貂蝉","妲己","王昭君"}set01.add("杨玉环")print(set01) #{'花木兰', '王昭君', '貂蝉', '妲己', '杨玉环'}set01.add("花木兰")print(set01) #{'花木兰', '杨玉环', '王昭君', '妲己', '貂蝉'}

set01.update(set02) 批量添加数据

   把set02添加到zet01中

set02 = {"嬴政","武则天"}
set01.update(set02)
print(set01) #{'花木兰', '嬴政', '杨玉环', '妲己', '王昭君', '武则天', '貂蝉'}

 不可以更改数据

集合元素不可更改,不能是可变数据类型    

为什么? 无序唯一

直接打印集合名字去查询

不能使用索引进行查询,因为我们集合是无序的

print(set01)

print(set02) 

print(set03)

#创建set01 = {"喜羊羊","美羊羊","懒洋洋","沸羊羊","暖羊羊","慢羊羊","灰太狼"}#set.copy() 复制/拷贝一个一模一样的集合set02 = set01.copy()print(set02) #{'慢羊羊', '美羊羊', '灰太狼', '喜羊羊', '沸羊羊', '暖羊羊', '懒洋洋'}#len(set) 返回集合的元素个数,集合的长度a = len(set01)print(a) #7"""x in set 元素x在不在集合当中x not in set 元素不在集合中"""print("慢羊羊" in set01) #Trueprint("慢羊羊" not in set01) #False#set(x) 把其他数据类型(x)转换成集合类型 Str = "hello"print(Str) #helloprint(type(Str))b = set(Str)print(type(b)) #<class 'set'>print(b) #{'o', 'e', 'h', 'l'}

重点

 并

 """

 

   1.他的符号是  |

   2.返回两个集合的所有值

"""

print(set01 | set02) #{1,2,3,4,5,7,9}

"""

 差

   1.差的符号是  -

   2.set01 - set02  set01去掉公共部分的值

"""

print(set01 - set02) #{1, 4}

print(set02 - set01) #{9, 7}

"""

 交

   1.交的符号  &

   2.两个的公共部分

"""

print(set01 & set02)  #{2, 3, 5}

"""

 补集

  1.补集的符号 ^

  2.并集-交集 = 补集

  3.除去公共部分,set01和set02的单独部分我都要

"""

print(set01 ^ set02) #{1, 4, 7, 9}

五.字典

概念

  •   映射是一种键(索引)和值(数据)的对应

""" 

 映射

 key  value

 张三  18

 李四  20

 王五  80

"""

"""

    [1,2,3,4]

索引 0 1 2 3

"""

创建

  • 键值对:键是数据索引的扩展

  • 字典是键值对的集合,键值对之间无序(没有索引)

  • 采用大括号{}和dict()创建,键值对用冒号: 表示

  • 字典类型是“映射”的体现

  • <字典变量> = {<键1>:<值1>, … , <键n>:<值n>}

#创建dict01 = {"张三":18,"李四":20,"王五":80}dict02 = dict()dict03 = dict({"张三":90,"李四":20})print(dict01)  #{'张三': 18, '李四': 20, '王': 80}print(dict02) #{}print(dict03)  #{'张三': 90, '李四': 20}

"""

  dict01[新的key] = 新的值  添加数据

  

"""

dict01["小乔"] = "天魔缭乱"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船', '元哥': '无敌时间移位', '小乔': '天魔缭乱'}

"""

 dict.pop(key)  根据key删除一对数据

 dict.clear()  清除所有数据

"""

dict01.pop("元哥")print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船'}

"""

  只能修改值,不可以修改key

  为什么:因为key是唯一的,不能重复的,避免出现重复的情况所以不能修改

  怎么修改: 

      先根据key拿到值  dict01["孙策"]

      再重新赋值

"""

dict01["孙策"] = "乘风破浪"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '乘风破浪', '元哥': '无敌时间移位'}

#创建

dict01["孙策"] = "乘风破浪"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '乘风破浪', '元哥': '无敌时间移位'}

# dict.keys()  查看所有的key(英雄)

print(dict01.keys()) #dict_keys(['鲁班', '花木兰', '孙策', '元哥'])

# dict.values()  查询所有的value(大招)

print(dict01.values()) #dict_values(['空中支援', '切换形态', '开船', '无敌时间移位'])

"""

 查询单个值

  1.dict[key]  利用key查询value

  2.dict.get(key,默认值)  利用key查询value 如果key没有,那么就输出默认值

"""

print(dict01["花木兰"]) #切换形态print(dict01.get("花木兰"))  #切换形态print(dict01.get("貂蝉","没有此英雄,请购买")) #没有此英雄,请购买

"""

 查询所有值(包括key和value)

  1.直接打印字典名

  2.dict.items() 迭代方法

"""

print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船', '元哥': '无敌时间移位'}print(dict01.items()) #dict_items([('鲁班', '空中支援'), ('花木兰', '切换形态'), ('孙策', '开船'), ('元哥', '无敌时间移位')])

 """

k in dict    key在不在字典里面

 如果在输出True  如果不在输出False

 为什么 20 in dict0

   原因是他只能判断key在不在,不能判断value在不在

"""

"""

  del 字典名[key]  删除指定位置的数据

  和pop一样 

  dict.pop(key) 删除指定位置的数据

"""

第三章笔记

一.  

1.字符串:
         概念:由0个或多个字符组成的有序字符序列
                    由' ' 或" "表示
                    使用[ ]获取一个或单个字符 例如:[-1:5]
     2.索引:返回字符串中单个字符
        切片:返回字符串中一段字符子串 
        左开右闭   正向递增  反向递减
       3.转义符:
           "\b"回退 
           "\n"换行(光标移动到下行首) 
           "\r" 回车(光标移动到本行首)
       4. 常用函数
          len()获取长度  str() 把任意数据类型转换成string
           Type()输出数据类型的
       5.lower() 转换小写   upper()转换大写   split()拆分
         replace   str中的任意一个子串替换成新的子串  返回字符串
       6. 格式化:
             %s,表示字符串;
             %d,表示整数;
             %f,表示浮点数
             %,表示一个占位符
       7.         .format(<逗号分隔的参数>)
二.

1.List(列表)
          列表是序列类型的一种扩展
          列表是一种序列类型,创建后可以随意被修改
          使用方括号 [] 或list() 创建,元素间用逗号 , 分隔
          列表中各元素类型可以不同,无长度限制

  • list01 = [1,2,3,4]"""[] 空列表list() 里面什么都没有,创建空列表list(["张三","李四"])"""list02 = list() #[]list03 = list(["张三","李四"])print(list01)print(list02)print(list03)list04 = [12.3,10,3.14e2,"张三"]print(list04) #[12.3, 10, 314.0, '张三']

2.常用函数:
          len(列表) 统计列表中元素的个数
          sum(列表) 求和
          max(列表) 最大值
          min(列表) 最小值

#创建list
list01 = [1,2,5,7,-2,-9]#len(列表) 统计列表中元素的个数
a = len(list01)
print(a) #6#sum(列表) 求和
b = sum(list01)
print(b) #4#max(列表) 最大值
c= max(list01)
print(c) #7
#min(列表) 最小值
d = min(list01)
print(d) #9

3.增:
          list.insert(index,值)  根据下标进行插入数据
          list.append(值) 在末尾插入

#创建
list01 = ["zz","dd,"hh","bb","pp"]#list.insert(index,值)  根据下标进行插入数据
list01.insert(1,"yy")
print(list01)  #['zz', 'yy', 'dd', 'hh', 'bb', 'pp
#list.append(值) 在末尾插入
list01.append("lisa")
print(list01) # ['zz', 'yy', 'dd', 'hh', 'bb', 'pp', 'lisa']


4.删:
          list.pop(index) 删除指定位置的数据
          list.remove(值) 删除值
          list.clear() 删除所有数据

#创建
list01 = ["zz","dd","hh","lisa","bb","pp","zz"]#list.pop(index) 删除指定位置的数据
list01.pop(3)
print(list01)  #['zz', 'dd', 'hh', 'bb', 'pp', 'zz']#list.remove(值) 删除值,但是他删除的是值第一次出现的位置
list01.remove("zz")
print(list01) #['dd', 'hh', 'bb', 'pp', 'zz']#list.clear() 删除所有数据
list01.clear()
print(list01) #[]


5.改:
         List[i] = 值(要修改的值

#重新进行赋值
list01[3] = "yy"
print(list01)  #['zz', 'dd', 'hh', 'yy', 'bb', 'pp', 'zz']


6.查:
         查询所有 ---直接打印列表名字
         查询单个值      利用[index]进行查询 index-->从0开始
         查询多个值      [start:stop]   左开右闭

#创建list
list01 = [1,2,5,7,-2,-9]#查询所有 ---直接打印列表名字
print(list01)
"""查询单个值利用[index]进行查询 index-->从0开始
"""
print(list01[1])  #2
"""

三:

元组 (tuple)
      1.概念:
        元组是一种序列类型,一旦创建就不能被修改  不能增删改
        使用小括号 () 或 tuple() 创建,元素间用逗号 , 分隔

创建

  • 使用小括号 () 或 tuple() 创建,元素间用逗号 , 分隔

  • #创建

    tuple01 = (1,2,3)tuple02 = tuple() #空元组  ()tuple03 = tuple((5,6,7))print(tuple01)print(tuple02)print(tuple03)

四  set集合

概念

集合是多个元素的无序(没有下标)组合

集合类型与数学中的集合概念一致

集合元素之间无序,每个元素唯一,不存在相同元素

集合元素不可更改,不能是可变数据类型    

为什么? 无序唯一

创建

  • 集合用大括号 {} 表示,元素间用逗号分隔

  • 建立集合类型用 {} 或 set()

  • 建立空集合类型,必须使用set()

  • ● #创建
    ● set01 = {1,2,3,4,5}
    ● set02 = set() #set()
    ● set03 = set({9,10,11})
    ● print(set01)
    ● print(set02) 
    ● print(set03)

  • 空列表 []

  •  空元组 ()

  •  空字典 {}

  •  空集合 set()

  •   原因是字典的创建也是{},两者冲突了

  •    所以我们的空集合是set(),创建空集合的时候必须使用set()

  • ● print(type({})) #<class 'dict'>
    ● print(type(set())) #<class 'set'>

  • set.add(数据) 添加一个数据  不也能添加已有的数据,虽然不报错,但是不显示

    #创建

    set01 = {"花木兰","貂蝉","妲己","王昭君"}set01.add("杨玉环")print(set01) #{'花木兰', '王昭君', '貂蝉', '妲己', '杨玉环'}set01.add("花木兰")print(set01) #{'花木兰', '杨玉环', '王昭君', '妲己', '貂蝉'}

set01.update(set02) 批量添加数据

   把set02添加到zet01中

set02 = {"嬴政","武则天"}
set01.update(set02)
print(set01) #{'花木兰', '嬴政', '杨玉环', '妲己', '王昭君', '武则天', '貂蝉'}

 不可以更改数据

集合元素不可更改,不能是可变数据类型    

为什么? 无序唯一

直接打印集合名字去查询

不能使用索引进行查询,因为我们集合是无序的

print(set01)

print(set02) 

print(set03)

#创建set01 = {"喜羊羊","美羊羊","懒洋洋","沸羊羊","暖羊羊","慢羊羊","灰太狼"}#set.copy() 复制/拷贝一个一模一样的集合set02 = set01.copy()print(set02) #{'慢羊羊', '美羊羊', '灰太狼', '喜羊羊', '沸羊羊', '暖羊羊', '懒洋洋'}#len(set) 返回集合的元素个数,集合的长度a = len(set01)print(a) #7"""x in set 元素x在不在集合当中x not in set 元素不在集合中"""print("慢羊羊" in set01) #Trueprint("慢羊羊" not in set01) #False#set(x) 把其他数据类型(x)转换成集合类型 Str = "hello"print(Str) #helloprint(type(Str))b = set(Str)print(type(b)) #<class 'set'>print(b) #{'o', 'e', 'h', 'l'}

重点

 并

 """

 

   1.他的符号是  |

   2.返回两个集合的所有值

"""

print(set01 | set02) #{1,2,3,4,5,7,9}

"""

 差

   1.差的符号是  -

   2.set01 - set02  set01去掉公共部分的值

"""

print(set01 - set02) #{1, 4}

print(set02 - set01) #{9, 7}

"""

 交

   1.交的符号  &

   2.两个的公共部分

"""

print(set01 & set02)  #{2, 3, 5}

"""

 补集

  1.补集的符号 ^

  2.并集-交集 = 补集

  3.除去公共部分,set01和set02的单独部分我都要

"""

print(set01 ^ set02) #{1, 4, 7, 9}

五.字典

概念

  •   映射是一种键(索引)和值(数据)的对应

""" 

 映射

 key  value

 张三  18

 李四  20

 王五  80

"""

"""

    [1,2,3,4]

索引 0 1 2 3

"""

创建

  • 键值对:键是数据索引的扩展

  • 字典是键值对的集合,键值对之间无序(没有索引)

  • 采用大括号{}和dict()创建,键值对用冒号: 表示

  • 字典类型是“映射”的体现

  • <字典变量> = {<键1>:<值1>, … , <键n>:<值n>}

#创建dict01 = {"张三":18,"李四":20,"王五":80}dict02 = dict()dict03 = dict({"张三":90,"李四":20})print(dict01)  #{'张三': 18, '李四': 20, '王': 80}print(dict02) #{}print(dict03)  #{'张三': 90, '李四': 20}

"""

  dict01[新的key] = 新的值  添加数据

  

"""

dict01["小乔"] = "天魔缭乱"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船', '元哥': '无敌时间移位', '小乔': '天魔缭乱'}

"""

 dict.pop(key)  根据key删除一对数据

 dict.clear()  清除所有数据

"""

dict01.pop("元哥")print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船'}

"""

  只能修改值,不可以修改key

  为什么:因为key是唯一的,不能重复的,避免出现重复的情况所以不能修改

  怎么修改: 

      先根据key拿到值  dict01["孙策"]

      再重新赋值

"""

dict01["孙策"] = "乘风破浪"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '乘风破浪', '元哥': '无敌时间移位'}

#创建

dict01["孙策"] = "乘风破浪"print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '乘风破浪', '元哥': '无敌时间移位'}

# dict.keys()  查看所有的key(英雄)

print(dict01.keys()) #dict_keys(['鲁班', '花木兰', '孙策', '元哥'])

# dict.values()  查询所有的value(大招)

print(dict01.values()) #dict_values(['空中支援', '切换形态', '开船', '无敌时间移位'])

"""

 查询单个值

  1.dict[key]  利用key查询value

  2.dict.get(key,默认值)  利用key查询value 如果key没有,那么就输出默认值

"""

print(dict01["花木兰"]) #切换形态print(dict01.get("花木兰"))  #切换形态print(dict01.get("貂蝉","没有此英雄,请购买")) #没有此英雄,请购买

"""

 查询所有值(包括key和value)

  1.直接打印字典名

  2.dict.items() 迭代方法

"""

print(dict01) #{'鲁班': '空中支援', '花木兰': '切换形态', '孙策': '开船', '元哥': '无敌时间移位'}print(dict01.items()) #dict_items([('鲁班', '空中支援'), ('花木兰', '切换形态'), ('孙策', '开船'), ('元哥', '无敌时间移位')])

 """

k in dict    key在不在字典里面

 如果在输出True  如果不在输出False

 为什么 20 in dict0

   原因是他只能判断key在不在,不能判断value在不在

"""

"""

  del 字典名[key]  删除指定位置的数据

  和pop一样 

  dict.pop(key) 删除指定位置的数据

"""

本文标签: 第三章笔记