python_封裝解構

1:封裝

說明:
1:將多個值使用逗號分割,組合在一起
2:本質上返回一個元組,只是省略了小括號

demo:
t = 1, 2
print(t)->(1, 2)

2:解構

說明:
1:把線性結構的元素解開,並順序的賦給其他的變量
2:左邊接納的變量數要和右邊解開的元素個數一致

2-1:解構-基礎用法

說明:線性結構和非線性結構都可以解構

demo:
lst = [3, 5]
first, second = list
print(first, second)-> 3, 5
a, b = {"key1":10, "key2":20}
print(a)->key1  # 由於字典是無序的,這裏有可能打印的是key2
print(b)->key2

[a,b] = 10,20
print(a)->10
print(b)->20

[a,b] = (1,2)
print(a)->1
print(b)->2
2-2:解構- ( * ) 的用法
# * 在尾部 (只能夠有一個 * )
a, *b = (1, 2, 3)
print(a)->1
print(b)->[2, 3]

# * 在中間 (只能有一個 * )
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
head, *mid, tail = a
print(head)->1
print(mid)-> [2, 3, 4, 5, 6, 7, 8]
print(tail)->9


# * 在頭部 (只能有一個 * )
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
*head, mid, tail = a
print(head)->[1, 2, 3, 4, 5, 6, 7]
print(mid)-> 8
print(tail)->9
2-2:解構- (_) 丟棄變量

說明:不關心的變量可以使用“_”,他也是個變量名,是合法標識符

demo:
# 去尾
lit = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
first, *_ = lit
print(first)->1

# 取頭尾
head, *_, tail = lit
print(head)->1
print(tail)->10
2-2:解構- (_) 之練習
從lst = [1,(2,3,4),5]中,提取4出來
lst = [1,(2,3,4),5]
_, (*_, tail), _ = lst
print(tail)->4
環境變量JAVA_HOME=/usr/bin,返回環境變量名和路徑
s = "JAVA_HOME=/usr/bin"
env, path = s.split("=")
print(env)->'JAVA_HOME'
print(path)->'/usr/bin'

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