Python_Day4_列表和元组

列表

  • 定义:一系元素按特定顺序构成的数据序列,且数据类型可以不同(甚至可以是列表)
  • 声明:一般方法:例如List=[1,2,'a','b'],列表由[]字面量语法定义

      列表生成式(建议使用):例如List=[x for x in range(1,10)]

  • 列表的操作:
  1. 运算符:

    (1)+:拼接列表;*:重复列表;索引和切片(与字符串一致)

    (2)比较运算:比较对应索引位置上元素的大小

    (3)成员运算:'x' in List  (值为True或False)

  2.  遍历:

items = ['Python', 'Java', 'Go', 'Kotlin']

for item in items:
    print(item)

  3.  方法:

    (1)添加&删除元素:

      .append('x')----在列表尾部添加元素

      .insert(n,'x')----在指定索引添加元素

      .remove('x')----删除指定元素

      .pop(n)----删除指定索引元素,并返回删除元素;若n为空,则删除并返回最后一个元素

      .clear()----清空列表

      del List[n]----删除指定索引元素

    (2)位置:.index('x',n)----从索引n开始查找元素x并返回其索引

    (3)计数:.count('x')----查找元素出现次数

    (4)排序:.sort    (5)反转:.reverse

  • 嵌套列表:

  例:

scores = [[0] * 3 for _ in range(5)]
scores[0][0] = 95
print(scores)    # [[95, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

⚠️声明列表时的内存分配情况日后研究

 

元组

  • 定义:多个元素按照一定的顺序构成的序列,且是不可变类型(不可添删改)
  • 声明:例如tuple=(1,2,'a','b')
  • 元组的操作:基本操作与列表一致

   打包和解包:

    打包:

a = 1, 10, 100
print(type(a), a)    # <class 'tuple'> (1, 10, 100)

     解包:

i, j, k = a
print(i, j, k) 

 解包时可使用*表达式接受多个变量,但是仅允许用一次,如i,*j,k。使用*表达式的变量解包后会成为一个列表。实际上,可变参数*是将多个参数打包成一个元组。

 

   交换数值:

     a,c,b,d,...=a,b,c,d  结果:a==a,c==b,b==c,d==d,...

   元组和列表的相互转换:

# 将元组转换成列表
info = ( 175, True)
print(list(info))       # [ 175, True]
# 将列表转换成元组
fruits = ['apple', 'banana', 'orange']
print(tuple(fruits))    # ('apple', 'banana', 'orange')

 

posted @ 2020-05-11 20:41  Ruanzy  阅读(171)  评论(0)    收藏  举报