Python数据分析——基础02

一笑奈何 提交于 2020-02-12 21:35:27

Python数据分析——基础02

元组(tuple)

元组是一个固定长度,不可改变的序列对象。

创建元组

用逗号分隔一列值

tup = 1,2,3
# (1, 2, 3)

用圆括号

tup = (1,2,3), (4,5,6,7)
# ((1, 2, 3), (4, 5, 6, 7))

使用tuple()可以将任意序列或迭代器转换成元组

tuple([1,2,3,4])
# (1, 2, 3, 4)
tuple('string')
# ('s', 't', 'r', 'i', 'n', 'g')

操作元组

使用索引

tup = (1,2,3)
tup[1]
# 2

如果元组中的某个对象是可变得,可以在原位进行修改。

tup = ([1,2,3], 4,5)
tup[0].append(3)
#([1, 2, 3, 3], 4, 5)
  • 可以使用加号将元组连接起来。
  • 元组乘一个整数,会将几个元组的复制串联起来,对象本身并没有被复制,只是引用了它。

拆分元组

tup = (4,5,6)
a, b, c = tup
b
# 5
tup = 4,5,(6,7)
a, b, (c, d) = tup
d
# 7
tup = [(1,2,3), (4,5,6), (7,8,9)]
for a, b, c in tup:
    print('a = {0}, b = {1}, c = {2}'.format(a, b, c))
'''
a = 1, b = 2, c = 3
a = 4, b = 5, c = 6
a = 7, b = 8, c = 9
'''
# 交换
a, b = 1, 2
b, a = a, b
# 摘取开头的几个元素
tup = 1,2,3,4,5,6,7
a, b, c, *_ = tup
a, b, c, *e = tup

e
# [5, 6, 7, 8, 9]

tuple方法

  • count()统计某个值的出现频率。
  • index()某个值的最小索引。

列表(list)

列表长度可变、内容可以被改变。

创建列表

  • 使用方括号创建。

    a_list = [1,2,3,'string', None]
  • 使用list()函数。

    tup = (1,2,3,'string',None)
    b_list = list(tup)
  • list()函数用来在数据处理中实体化迭代器或生成器。

    list(range(3))
    # [0, 1, 2]

添加和删除元素

  • append()在列表末尾添加元素。

    a_list = [1,2,3]
    a_list.append(0)
    #[1, 2, 3, 0]
  • insert()在特定的位置插入元素。

    a_list = [1,2,3]
    a_list.insert(0,0)
    # [0, 1, 2, 3]

append()相比,insert()开销比较大,后续的元素的引用必须在内部进行迁移,以便为新元素提供空间。如果需要在序列的头部和尾部插入一个元素,可能需要使用collections.deque(),一个双尾部队列。

  • pop()移除并返回指定位置的元素。

    a_list = [1,2,3]
    a_list.pop()
    # 缺省操作,去除最后一个元素并返回该元素的值。
    # 可以制定位置删除元素并返回该位置的元素的值。
  • remove()去除某个值。

    a_list = ['1','1','1','1']
    a_list.remove('1')
    # 会删除第一个出现的匹配元素。
  • in/not in可以检查列表是否包含某个值。

在列表中检查是否存在某一个值远比字典和集合速度慢,因为Python是线性搜索列表中的值,但是在字典和集合中,在同样的时间内还可以检索其他项(基于哈希表)。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!