组的概念

第四章、组的概念

  • 组在python中其实是序列,str,list,tuple都是序列,每一个序列中的元素都会分配一个序号

一、列表(list)

  1. 列表的定义
[1,2,3,4]
type([1,2,3,4]) # 查看数据类型
  1. 列表是动态数据类型,列表中也可以存不同的数据类型的数据
["hello world",1,[1,2],True,False]
  1. 列表中加入列表,叫嵌套列表
[[1,2,3],[4,5,6],[7,8,9]]
  1. 列表的操作
["星月打击","苍白之瀑","月之降临","月神冲刺"]
["星月打击","苍白之瀑","月之降临","月神冲刺"][0] # 访问字符串
["星月打击","苍白之瀑","月之降临","月神冲刺"][-1:] # 用冒号这种访问方式获得的数据依据是列表
["星月打击","苍白之瀑","月之降临","月神冲刺"]+["星月打击","苍白之瀑","月之降临","月神冲刺"] # 两个列表变成一个列表
["星月打击","苍白之瀑","月之降临","月神冲刺"]*3 # 将列表数据乘3倍

二、元组(tuple)

  1. 元组的定义
() # 小括号
(1,2,3,4)
("1",2,True)
  1. 元组的访问
(1,2,3,4)[1]
(1,2,3,4)[-1:]
  1. 元组的操作
(1,2,3,4)*3
(1,2,3,4)+(1,2,3,4)
  1. type((1)) # 整型
    type(("hello")) # str
    
    • 原因:在python中元组的定义和运算符小括号冲突,编译器强制规定,只有一个元素的时候是小括号,想要定义一个元素的元组时可以在数字后面加一个逗号。

    • type((1,)) # 元组
      
  2. 表示空的元组

type(()) # 空的元组
type([]) # 空的列表

序列的共有特性

  1. []操作序列
["星月打击","苍白之瀑","月之降临","月神冲刺"][0] # 访问字符串
["星月打击","苍白之瀑","月之降临","月神冲刺"][-1:] # 访问字符串
  1. [:]切片操作
"hello world"[1:3] # 切2-4这几个元素
"hello world"[0:8:2] # 隔两个取一次
  1. 序列可以+、*
  2. 一个序列中是否包含某个元素用in1
3 in [1,2,3,4,5,6,7] # 返回Ture
  1. 某个元素不在这个序列中用not in2
3 not in [1,2,3,4,5,6,7] # 返回False
  1. 查看某个序列有多少元素len
len([1,2,3,4,5]) # 返回5
len("hello world") # 返回11
  1. 求最大值和最小值max,min
max([1,2,3,4,5]) # 返回5
min([1,2,3,4,5]) # 返回1
max("helllo world") # 返回w
min("helllo world") # 返回空格
min("hellloworld") # 返回d
  • 总结:序列中的最大最小按照字符编码进行排序ascll

  • 将字符转换成asscll表中的数字

  • ord("w") # 119 
    ord(" ") # 32
    

三、集合set(无序)

  1. 定义:用花括号
{}
{1,2,3,4,5}
type({1,2})
{1,2,3,4,5}[0]  # 报错,所以更不能切片
  1. 集合的特点

    1. 无序
    2. 唯一
    {1,1,2,2,3,3} # 结果:{1,2,3}
    
  2. 集合支持的操作

    • len

    • len({1,2,3,4})
      
    • in/not in

    • 1 in {1,2,3,4}
      1 not in {1,2,3,4}
      
  3. 集合的特殊操作(只有集合才有这个操作)

    • - 差集

      • {1,2,3,4} - {3,4} # 结果{1,2}
        
    • |求并集

      • {1,2,3,4} | {4,5,6} # 结果){1,2,3,4,5,6}
        
    • &求交集

      • {1,2,3,4} & {3,4} # 结果{3,4}
        
  4. 如何定义一个空的集合。

    • type({}) # 结果:dict字典
      type(set()) # 结果:空的集合
      

四、字典

  1. 很多个key3和value4,集合类型,但是却不是序列

  2. 定义:

    1. {key1:value,key2:value2,key3:value3}
      {"Q":"星月打击","W":"苍白之瀑","E":"月之降临","R":"月神冲刺"}
      
  3. 字典的操作不能按照序列的方式

    • {"Q":"星月打击","W":"苍白之瀑","E":"月之降临","R":"月神冲刺"}["Q"]
      
    • 字典中是不能存在两个相同的key的

    • {"Q":"星月打击","Q":"苍白之瀑","E":"月之降临","R":"月神冲刺"}["Q"] # 结果:"苍白之瀑"
      {"Q":"星月打击","Q":"苍白之瀑","E":"月之降临","R":"月神冲刺"} # 结果:{"Q":"苍白之瀑","E":"月之降临","R":"月神冲刺"}
      
  4. 空的字典定义

    • type({}) # dict
      

  1. 运算符,返回bool类型 ↩︎

  2. 运算符,返回bool类型 ↩︎

  3. key为键值,不能重复,重复的话会覆盖,前一个键的值,key不可以是任意的数据类型,key必须是不可变数据类型 ↩︎

  4. value可以取任意的数据类型 ↩︎

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页