歡迎光臨
每天分享高質量文章

Python奇技淫巧,看看你知道幾個

來自:Python之禪(微訊號:VTtalk)

1、isinstance

isinstance 函式可用於判斷實體的型別,其實它的第二個引數可以是多個資料型別組成的元組。例如:

isinstance(x, (int, float))

# 等價於

isinstance(x, int) or isinstance(x, float)

類似的函式還有字串的 startswith 方法和 endswith 方法,例如:

s.startswith(('"""', "'''"))

# 等價於

s.startswith("'''") or s.startswith('"""')

2、用 http.server 共享檔案

# python3
python3 -m http.server

# python2
python -m SimpleHTTPServer

效果如下圖所示,透過瀏覽器方便區域網共享檔案

3、zip 函式實現字典鍵值對互換

>>> lang = {"python":".py", "java":".java"}

>>> dict(zip(lang.values(), lang.keys()))
{'.java': 'java', '.py': 'python'}

4、查詢串列中出現次數最多的數字

[1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4, 5]
>>> max(set(test), key=test.count)
4

5、使用 __slots__ 節省記憶體

class MyClass(object):
   def __init__(self, name, identifier):
       self.name = name
       self.identifier = identifier
       self.set_up()

print(sys.getsizeof(MyClass))
>>> 1016

class MyClass(object):
   __slots__ = ['name', 'identifier']

   def __init__(self, name, identifier):
       self.name = name
       self.identifier = identifier
       self.set_up()

print(sys.getsizeof(MyClass))
>>> 888


●本文編號318,以後想閱讀這篇文章直接輸入318即可

●輸入m獲取到文章目錄

推薦↓↓↓

 

Web開發

更多推薦18個技術類公眾微信

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂