系統學習python第四天學習筆記

1.解釋 / 編譯補充

  • 編譯型:代碼寫完後,編譯器將其變成成另一個文件,而後交給計算機執行。
  • 解釋型:寫完代碼交給解釋器,解釋器會從上到下一行行代碼執行:邊解釋邊執行。 【實時翻譯】

2.字符串功能補充

字符串特有功能

  • startswith / endswithpython

    • 判斷是否以什麼爲開頭或結尾
    name = 'alex'
    
    # 判斷是否以al開頭
    """
    # 方式一:
    flag = name.startswith('al')
    print(flag)
    """
    """
    # 方式二:
    val = name[0:2]
    if val == 'al':
        print('是以al開頭')
    else:
        print('不是')
    """
  • formatgit

    • 格式化輸出
    name = "我叫{0},年齡:{1}".format('老男孩',73)
    print(name)
  • encodeapp

    • 以什麼編碼格式存入
    name = '李傑' # 解釋器讀取到內存後,按照unicode編碼存儲:8個字節。
    v1 = name.encode('utf-8')
    print(v1)
    v2 = name.encode('gbk')
    print(v2)
  • join編碼

    • 以特定字符鏈接字符串
    name = 'alex' # a_l_e_x
    result = "**".join(name) # 循環每一個元素,並在元素和元素之間加入鏈接符。
    print(result)

公共功能

  • 步長翻譯

    • 正數表示從左到右,負數表示從右到左
    name = 'alex'
    
    # val = name[0:-1:2]
    # val = name[1:-1:2]
    # val = name[1::2]
    # val = name[::2]
    # val = name[-1:0:-2]
    # print(val)
    
    # 筆試題:請將字符串反轉。
    val = name[::-1]
    print(val)
  • for 循環code

    name = 'alex'
    for item in name:
        print(item)
    name = 'alex'
    for item in name:
        print(item)
        break
        print('123')
    name = 'alex'
    for item in name:
        print(item)
        continue
        print('123')
    # 練習題
    
    # 1. for循環打印 「alex」 的每一個元素: for > while
    
    # 2. 請打印: 1 - 10
    """
     for i in range(1,11): # [1,2,3,4,5,6,7,8,9,10,11,12,14]  "12345678910"
         print(i)
    """
    
    # 3. 請打印: 1 2 3 4 5 6 8 9 10
    """
    for i in range(1,11):
        if i == 7:
            pass
        else:
            print(i)
    """

    注意:for和while的應用場景:有窮盡優先使用for,無窮盡用whileorm

3.列表

若是想要表示兩個同窗 users = "李邵,李奇航...".索引

之後想要表示多個」事物「,能夠使用列表。ip

users = ["李邵奇","奇航",99]

公共功能

  • len內存

    users = ["李邵奇","奇航",99]
    val = len(users)
    print(val) # 3
  • 索引

    users = ["李邵奇","奇航",99]
    val = users[0]
    print(val)
  • 切片

    users = ["李邵奇","奇航",99]
    
    val = users[0:2]
  • 刪除(數字/布爾/字符串除外)

    users = ["李邵奇","奇航",99]
    # 方式一
    users.pop(1)
    print(users)
    
    # 方式二:
    del users[1]
    print(users)

    注意:

    • 字符串自己不能修改或刪除【不可變類型】 v1 = "alex".upper()
    • 列表是可變類型。
  • 修改(字符串/數字/布爾除外)

    users = ["李邵奇","奇航",99]
    users[2] = 66
    
    users[0] = '李傑'
    users[0][1]
  • 步長

    users = ["李邵奇","奇航",99]
    
    val = users[0:2:2]
  • 練習題

    """
    實現一個整數加法計算器(兩個數相加):
    
    如:content = input("請輸入內容:") 用戶輸入:5+9或5+ 9或5 + 9(含空白),而後進行分割轉換最終進行整數的計算獲得結果。
    """
    
    
    
    # 思路一:
    """
    content = input('請輸入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    content = content.strip() # [5+9]  或 [5 +9]  或者 [5 + 9]
    v1 = int(content[0])
    v2 = int(content[-1])
    v3 = v1 + v2 
    """
    
    # 思路二:
    """
    content = input('請輸入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    content_len = len(content)
    index = 0
    total = 0
    while True:
        char = content[index]
        if char.isdigit():
            total += int(char)
        index += 1
        if index == content_len:
            break
    print(total)
    """
    
    # 思路三:
    """
    content = input('請輸入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    result = content.split('+')
    # print(result) # ['55 ', ' 99 ']
    v1 = int(result[0]) # "55"
    v2 = int(result[1]) # " 99 "
    v3 = v1 + v2
    print(v3)
    """
  • for循環

    """
    users = ['李邵奇','利奇航','張三丰','李子森']
    for i in users:
        print(i)
    """
    """
    users = ['李邵奇','利奇航','張三丰','李子森']
    for i in users:
        # 第一次循環:i=「李邵奇」
        print(i)
        for ele in i:
            print(ele)
    """
    
    # 練習題:請經過for循環和數字計數器實現:users = ['李邵奇','利奇航','張三丰','李子森']
    """
        0 李邵奇
        1 利奇航
        2 張三丰
        3 李子森
    """
    """
    # 方式一
    users = ['李邵奇','利奇航','張三丰','李子森']
    count = 0
    for i in users:
        print(count,i)
        count += 1
    """
    """
    # 方式二
    users = ['李邵奇','利奇航','張三丰','李子森']
    users_len = len(users) # 4
    for index in range(0,users_len): # [0,1,2,3]
        print(index,users[index])
    """

獨有功能

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

    users = []
    users.append('alex')
    print(users)
    """
    示例一:
    users = []
    while True:
        name = input('請輸入姓名:')
        users.append(name)
        print(users)
    """
    """
    示例二:
    # 錄入用戶和密碼
    users = []
    for i in range(0,3):
        name = input('請輸入用戶名和密碼:')
        users.append(name)
    print(users) # ['alex,123', 'oldboy,888', 'lishaoqi,123']
    
    # 用戶和密碼校驗
    username = input('請輸入要登錄用戶名:')
    password = input('請輸入要登錄密碼:')
    for item in users:
        result = item.split(',') # ['alex','123']
        user = result[0]
        pwd = result[1]
        if user == username and pwd == password:
            print('登錄成功')
            break
    
    """
  • insert

  • remove

  • pop

  • clear

列表總結:

  • 增:

    • append / insert
  • 刪:

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

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

    • 索引/切片
  • 列表嵌套

    users = ["alex",0,True,[11,22,33,"老男孩"],[1,['alex','oldboy'],2,3]]
    
    users[0]
    users[2]
    users[0][2]
    users[3] # [11,22,33,"老男孩"]
    users[3][-1] # "老男孩"
    users[3][-1][1] # '男'
    users[3] = 666

4.元組

  1. 元組書寫規範

    users = [11,22,33,"老男孩"] # 列表(可變)
    
    users = (11,22,33,"老男孩") # 元組(不可變)
  2. 公共功能

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

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

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

      users = (11,22,33,"老男孩")
      print(users[0:2:2])
    4. 刪除(排除:tuple/str/int/bool)

    5. 修改(排除:tuple/str/int/bool)

    6. for循環(排除:int/bool)

      users = (11,22,33,"老男孩")
      for item in users:
          print(item)
    7. len(排除:int/bool)

      users = (11,22,33,"老男孩")
      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
相關文章
相關標籤/搜索