所有非数字型变量都支持:

  1. 取值 [ ]
  2. 遍历 for in
  3. 计算长度、最大最小值、比较、删除
  4. 连接 + 和重复 *(字典不可以重复 ∵键唯一)
  5. 切片

公共方法

内置函数

python列表不重复数据个数 python列表不重复取值_元组

切片

python列表不重复数据个数 python列表不重复取值_字符串_02

        

python列表不重复数据个数 python列表不重复取值_元组_03

运算符

python列表不重复数据个数 python列表不重复取值_python列表不重复数据个数_04

List列表

 list 是 python 的内置数据类型,list 中的数据类型不必相同
在 list 中保存的是指针,并非数据。

尽管列表中可以存储不同类型的数据,但是在开发中更多的应用场景是

  1. 存储相同类型的数据
  2. 通过迭代遍历,在循环体内部针对列表中的每一项元素,执行相同的操作

python列表不重复数据个数 python列表不重复取值_元组_05

取值    L[1]

除了支持正向顺序索引获取列表中的每一个元素以外,也支持倒序访问list中的每一个元素。

python列表不重复数据个数 python列表不重复取值_元组_06

      

python列表不重复数据个数 python列表不重复取值_元组_07

取索引 L.index ("a")

python列表不重复数据个数 python列表不重复取值_元组_08

二维list

python列表不重复数据个数 python列表不重复取值_字符串_09

          

python列表不重复数据个数 python列表不重复取值_python列表不重复数据个数_10

python列表不重复数据个数 python列表不重复取值_元组_11

tuple元组

可以使用for in遍历元组,但是在开发中,更多的应用场景是:

  • 函数的参数和返回值,一个函数可以接收任意多个参数,或者一次返回多个数据
  • 格式字符串,格式化字符串后面的()本质上就是一个元组。

        

python列表不重复数据个数 python列表不重复取值_字符串_12

  • 让列表不可以被修改,以保护数据安全

python列表不重复数据个数 python列表不重复取值_元组_13

tuple的元素也可以是tuple

T = tuple(L)    L = list(T) 可以将列表L与元组T相互转换

对于仅包含基础数据类型(数字类型、布尔类型、字符串类型)的数据,tuple是固定不变的,不可修改元素,不可增加;对于组合数据类型,则不受这个约束。

python列表不重复数据个数 python列表不重复取值_python列表不重复数据个数_14

定义只包含一个元素的元组要在元素末尾加","

python列表不重复数据个数 python列表不重复取值_元组_15

T.count(x)统计x出现的次数

T.index(x)返回x第一次出现的下标位置

dict字典

可以使用 for in遍历字典,但是在开发中,更多的应用场景是:

  • 使用多个键值对,存储描述一个物体的相关信息——描述更复杂的数据信息
  • 将多个字典放在一个列表中,再进行遍历,在循环体内部针对每一个字典进行相同的处理

python列表不重复数据个数 python列表不重复取值_字符串_16

保存映射关系,每一项包含一个key(必须是不可变类型)和一个value

python列表不重复数据个数 python列表不重复取值_元组_17

    

python列表不重复数据个数 python列表不重复取值_字符串_18

访问元素:d[key]

添加和修改元素:d[key] = value   当key不存在时,往dict中添加元素;key存在时,更新dict;

删除元素:d.pop(key)   clear()清空

统计键值对数量 len(d_name)

合并字典 d1.update(d2)   如果有键相同的,覆盖原有的键值对

python列表不重复数据个数 python列表不重复取值_元组_19

set集合

元素无序,不可重复

python列表不重复数据个数 python列表不重复取值_python列表不重复数据个数_20

访问元素:由于set里面的元素是无序的,不能像list那样通过索引来访问。可以使用in来判断某个元素是否在set中。

python列表不重复数据个数 python列表不重复取值_元组_21

删除元素:set.remove(x)   需要提前判断要remove()的元素是否在set里面,确保存在后,再remove,否则会报错。

                  set.discard(x)   要删除的元素不存在也不会报错会报错。

                  set.clear()         清除所有元素

判断两集合是否重合:s1.isdisjoint(s2)  如果有重合,返回False,否则返回True。也可直接使用位运算符 s3 = s1 & s2,s3即重复的元素结果为空就代表无重复;类似的还有集合求并s1|s2。s1-s2去掉s1中在s2里的元素。

s1 = set([1, 2, 3, 4, 5])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
flag = s1.isdisjoint(s2)
if not flag:
    for a in s1:
        if a in s2:
            print(a)

string字符串

len(s)获取字符串的长度
s1.count(s2)s2在s1中出现的次数
字符串[索引]从字符串中取出单个字符

python列表不重复数据个数 python列表不重复取值_元组_22

  

python列表不重复数据个数 python列表不重复取值_元组_23

 

python列表不重复数据个数 python列表不重复取值_python列表不重复数据个数_24

  

python列表不重复数据个数 python列表不重复取值_字符串_25

numpy.array:数组

array() 是 numpy 包中的一个函数,array 里的元素都是同一类型

list可当作数组使用,但list中元素不一定相同,因此存放的是指针,但为了保存一个简单的列表[1,2,3]。就需要三个指针。对于数值运算来说不够高效。“Python虽然也提供了array模块,但其只支持一维数组,不支持多维数组(在TensorFlow里面偏向于矩阵理解),也没有各种运算函数。因而不适合数值运算。”