python入門超easy系列(三)——— 初探元組、字典和集合,額外拓展

python入門超easy系列(三)——— 初探元組、字典和集合,額外拓展

衆所周知,python是世界上入門最簡單的語言!?——周某人


元組(tuple)

  • 元組的定義:Python 的元組與列表類似,不同之處在於元組的元素不能修改。元組使用小括號(),列表使用方括號[]。

  • 創建元組

    # 創建空元組:
    tup1 = ()
    print(type(tup1))
    
    # 元組和列表一樣,可以存儲任意的數據類型
    tup1 = ('Google', [1, 2], 3, (4, ))
    
    # 當元組中只包含一個元素時,需要在元素後面添加逗號,否則括號會被當作運算符使用
    tup2 = (20)
    print(type(tup2))
    
    tup3 = (20, )
    print(type(tup3))
    
  • 修改元組:元組中的元素值是不允許修改的,但我們可以對元組進行連接組合

    tup1 = (12, 3.14)
    tup2 = ('abc', [1, 2])
    
    tup3 = tup1 + tup2
    print(tup3)
    
    tup4 = tup1 * 4
    print(tup4)
    
  • 刪除元組:元組中的元素值是不允許刪除的,但我們可以使用 del 語句來刪除整個元組

    tup = ('Hello', 12, [123, 45])
    
    print(tup)
    del tup
    print("刪除後的元組 tup:")
    print(tup)
    

字典(dict)

  • 字典定義:通過{}進行定義,元素是由’鍵值對’組成的,鍵 和 值之間是由’:'進行連接,如{鍵: 值}。鍵是唯一的,而值可以是任意的。

    d = {'name': 'dahua', 'age': 18}
    print(d, type(d))
    
  • 字典操作

    # 可以根據鍵獲取值
    print(d['name'])
    
    # 當鍵不存在時或報KeyError錯
    # print(d['height'])
    
    # 可以通過get方法根據鍵獲取值,
    print(d.get('age'))
    
    # 當鍵不存在時不會報錯,會返回None
    print(d.get('height'))
    
    # 可以設置默認值,有對應的鍵返回其值,沒有時返回設置的默認值
    print(d.get('weight', 75))
    
    # 統計元素個數,字典統計的是鍵值對個數
    print(len(d))
    # print(len('helloworld'))
    

集合(set)

  • 集合定義:通過 ‘set{}’ 進行定義,可以作爲容器存放任意數據,但是元素是不能重複的,且是無序的。

    # 定義空集合不能使用{},這是留給定義空字典使用的
    # 應該使用set()
    s1 = {}
    print(type(s1))
    
  • 集合的操作

    s1 = {'李白', '杜甫', '白居易', '王安石', '蘇軾', '李白'}
    s2 = {'李白', '李商隱', '李清照', '李賀', '李煜', '蘇軾'}
    
    # print(s1, type(s1))
    # 交集
    print(s1 & s2)
    # 並集
    print(s1 | s2)
    # 差集
    print(s1 - s2)
    print(s2 - s1)
    
  • 集合經常用於去重操作

    a = set([1, 2, 3, 4, 3, 2, 1])
    print(a)
    

額外拓展之python常用的數據類型

python中常用的數據類型:整型(int)、浮點(float)、布爾(bool)、字符串(str)、列表(list)、元組(tuple)、字典(dict)、集合(set)等。

  • 整型(int):就是數學中的整數

  • 浮點(float):就是數學中的小數

    # 浮點
    b = 3.14
    print(b, type(b))
    
    # 科學計數法
    c = 3.1415926e-3
    print(c, type(c))
    
  • 複數(complex)

    # 複數:瞭解
    d = 2 + 3j
    print(d, type(d))
    
  • 布爾(bool):對應於生活中的真假邏輯,只有兩個值True/False

  • 空(NoneType):空類型,只有一個值None

  • 字符串(str):使用引號括起來的一串字符

    • 定義:一對單引號、一對雙引號、三對單引號、三對雙引號
    • 使用 \ 符號,使原來有特殊含義的字符變成普通字符,也可以在定義字符串的前面加一個’r’
  • 列表(list)、字典(dict)、集合(set)不再說明。

額外拓展之強制類型轉換

Tips:去掉註釋,按照每塊運行

# 轉換爲整數
# a = int(3.14)
# 參數1:需要轉換的數據
# base:數據的進制類型,默認爲十進制
# a = int('123', base=8)
# a = int('abc', base=16)

# 浮點
# a = float(250)

# 字符串
# a = str(123)

# 列表
# a = list('hello')
# a = list((1, 2, 3))
# a = list({1, 2, 3})
# 可以轉換不會報錯,但是隻保留了鍵
# a = list({'name': 'ergou', 'age': 18})

# 元組
# a = tuple([1, 2, 3])

# 集合
# a = set([1, 2, 3])

# 字典
lt = [('name', 'dahua'), ('age', 18)]
a = dict(lt)
print(a, type(a))

下期預告:介紹一種封裝機制——函數,這種機制在後面寫大量複用代碼的時候將起到縮減代碼量的作用使得main函數變得更加簡潔明瞭,便於清理思路,增強團隊合作能力。
Tips:如有疑問歡迎隨時打擾 ???,另外本篇文章部分參考《菜鳥教程 | python基礎》!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章