iT邦幫忙

2024 iThome 鐵人賽

DAY 26
0
Python

python介紹系列 第 26

Python進階語法(九)

  • 分享至 

  • xImage
  •  

上下文管理器 (Context Manager) 與 with 語法
with 語法能確保你在開啟的文件或連線使用完畢後,自動關閉資源,無需手動處理。
with open("example.txt", "w") as file:
file.write("Hello, World!")
這樣做可以避免忘記關閉文件,特別是當你在處理大量文件時,能大大減少錯誤發生的機會。

namedtuple
namedtuple 是一個內建的工具,讓你可以像操作對象屬性一樣去操作元組,但性能上還是和元組一樣快。
from collections import namedtuple

Point = namedtuple("Point", ["x", "y"])
p = Point(10, 20)

print(p.x, p.y) # 10 20
它可以使代碼更具可讀性。

列表生成式 (List Comprehensions) 的進階用法
除了常規的列表生成式,你還可以使用條件判斷和多個 for 迴圈生成列表,這樣能讓你的代碼更加簡潔。
result = [x * y for x in range(1, 4) for y in range(1, 4) if x != y]
print(result) # [2, 3, 3, 6, 4, 6]
這樣在一行中做了多個步驟,不需要寫多層的 for 迴圈,大大簡化代碼。

itertools 模組
itertools 提供了許多實用的迭代器工具,比如 permutations() 可以讓你得到某集合的所有排列組合。
import itertools

perm = itertools.permutations([1, 2, 3])
for p in perm:
print(p)
這樣處理組合或排列時非常方便。


上一篇
Python進階語法(八)
下一篇
Python進階語法(十)
系列文
python介紹30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言