1. 程式人生 > >分分鐘鐘學會Python - 數據類型(列表、元祖)

分分鐘鐘學會Python - 數據類型(列表、元祖)

指定 lse 排序 ryu 循環 功能 n) 數據 嵌套

第四節 數據類型(列表、元祖)

今日內容

  • 列表

  • 元祖

1、列表

1.格式

users = ["ji",1,3,"gyhj"]

2.公共方法

  • 1.len #計算長度

    users = ["ji",1,3,"gyhj"]
    val = len(users)
    print(val)    # 3
  • 2.索引 #輸出某一個元素

    users = ["ji",1,3,"gyhj"]
    val = users[1]
    print(val)    # 1                                             
  • 3.切片 #輸出某一段元素

    users = ["ji",1,3,"gyhj"]
    val = users[0:2]
    print(val)    # "ji",1
  • 4.修改(字符串/數字/布爾除外)

    users = ["ji",1,3,"gyhj"]
    users[2] = 66
    print(users)  # ['ji', 1, 66, 'gyhj']
  • 5.步長 #選取列表中第幾個元素

    users = ["ji",1,3,"gyhj"]
    val = users[0:3:2]
    print(val)    # ['ji', 3]
  • 6.for循環

    users = ["ji",1,3,"gyhj"]
    for i in users:   
    print(i)  # 每個元素一次打印
    """
    users = ["ji","asdgfh","tryu","gyhj"]
    for i in users:
     # 第一次循環:i=“ji”
      for e in i:
      print(e)    # 打印第一個元素中每個字符
    """
    # 練習題:請通過for循環和數字計數器實現:users = ['李邵奇','利奇航','張三豐','李子森']
     1 qwe
     2 asd
     3 zxc
     4 rty
    # 方式一
    users = ['qwe','asd','zxc','rty']
    count = 1
    for i in users:
      print(count,i)
      count += 1
    # 方式二
    users = ['qwe','asd' ,'zxc','rty']
    users_len = len(users) # 4
    for index in range(0,users_len): # [0,1,2,3]
      print(index,users[index])

    註意:for和while的應用場景:

    • 有窮盡優先使用for,
    • 無窮盡用while

3.獨有方法

  • 1.append,在列表的最後追加一個元素

    # 示例
    users = ["sdxfc"]
    while True:
     name = input('請輸入姓名:')
     users.append(name)
     print(users) # ['sdxfc', 'sdf']
  • 2.insert #在指定索引位置進行插入元素

    users = ['qwe','asd','zxc','rty']
    users.insert(1,'zxc')
    print(users)  # ['qwe', 'zxc', 'asd', 'zxc', 'rty']
  • 3.remove # 刪除 註意:()裏不加刪除內容報錯

    .pop # 刪除 註意:()裏不加數字,默認刪除最後一個

    del # 刪除 註意:()裏不加數字報錯

    .clear # 刪除列表裏所有元素 註意:()裏不能加數字

    users = ["ji",1,3,"gyhj"]
    # 方式一
    users.remove('ji')
    print(users)  # [1, 3, 'gyhj']
    
    # 方式二
    users.pop(1)
    print(users)  #['ji', 3, 'gyhj']
    
    # 方式三
    del users[1]
    print(users)  #['ji', 3, 'gyhj']
    
    # 方式四
    users.clear()
    print(users)  # []

    註意:

    • 字符串本身不能修改或刪除【不可變類型】
    • 列表是【可變類型】
  • 4.".reverse" #反轉

    v1 = [1,2,3111,32,13]
    print(v1) # [1, 2, 3111, 32, 13]
    v1.reverse()
    print(v1) # [13, 32, 3111, 2, 1]
  • 5."sort" # 排序

    v1 = [1,2,3111,32,13]
    v1.sort(reverse=False) # 從小到大(默認)
    print(v1) # [11, 13, 22, 32, 3111]
    v1.sort(reverse=True) # 從大到小
    print(v1) # [3111, 32, 22, 13, 11]
    
    

4.總結

  • 1.增:

    • .append / .insert
  • 2.刪:

    • .remove / .pop /. clear / del users[2]
  • 3.改:

    • users[3] = "新值"
  • 4.查:

    • 索引/切片
  • 5.列表嵌套

    users = ["a",0,True,[1,2,3,"kjhg"],[4,['sdf','dfg'],5,6]]
    users[0]  # a
    users[2]  # True
    users[3][2]   # 3
    users[3][-1] # "kjhg"
    users[3][-1][-1] # 'g'
    users[3] = 666    # ['a', 0, True, 666, [4, ['sdf', 'dfg'], 5, 6]]

2、元祖

1.格式

  • users = [11,22,33] # 列表(元素可變)
  • users = (11,22,33) # 元組(元素不可變)

2、公共方法

  • 1.索引(排除:int/bool)

    users = (11,22,33)
    print(users[0])   # 11
    print(users[-1])  # 33
  • 2.切片(排除:int/bool)

    users = (11,22,33)
    print(users[0:2])
  • 3.步長(排除:int/bool)

    users = (11,22,33,"qwerty")
    print(users[0:2:2])
  • 4.for循環(排除:int/bool)

    users = (11,22,33,"qwerty")
    for item in users:
      print(item)
  • 5.len(排除:int/bool)

    users = (11,22,33,"qwerty")
    print(len(users))

3、獨有方法(無)

4、 特殊

  • 元組中的元素(兒子)不可被修改/刪除

    # 示例一:
    v1 = (11,22,33)
    v1[1] = 999 # 錯誤
    v1 = 999  # 正確
    # 示例二:可以嵌套
    v1 = (11,22,33,(44,55,66),(11,2,(99,88,),3))
    # 示例三:嵌套
    v2 = [11,22,33,(11,22,33)]
    v2[-1][1] = 99 # 錯誤
    v2[-1] = 123 # 正確
    # 示例四:嵌套
    v3 = (11,[1,2,3],22,33)
    v3[1] = 666 # 錯誤
    v3[1][2] = 123

3、總結

1.列表(可變)

  • 公共
    • 索引
    • 切片
    • 步長
    • 修改
    • 刪除 del
    • for
    • len
  • 獨有
    • append
    • insert
    • pop
    • remove
    • clear
  • 列表嵌套

2.元組(不可變)

  • 公共

    • 索引
    • 切片
    • 步長
    • for
    • len
  • 獨有功能(無)

  • 元組嵌套

    # 錯誤示例
    v3 = (11,[1,2,3],22,33)
    v3[1] = 666 
    v3[1][2] = 123

    ?

分分鐘鐘學會Python - 數據類型(列表、元祖)