python 高階知識點 Python 高階知識點

2021-10-11 20:13:54 字數 1359 閱讀 2021

filter 函式

filter() 函式用於過濾序列,過濾掉不符合條件的元素,返回由符合條件元素組成的新列表。

filter(function, iterable)

引數:function -- 判斷函式,返回布林值。

iterable -- 可迭代物件。

a = [ "12a,","234","dgb"]

b = list(filter(str.isdigit,a))

# 輸出

itertools 模組

import itertools as its

# 產生abcd的全排列

a = its.permutations('abcd')

for item in a:

print(type(item),item)

# 產生abcde的五選三組合

b = its.combinations('abcde', 3)

# 產生abcd和123的笛卡爾積

c = its.product('abcd', '123')

# 產生 `a / b / c / a / b` 的順序無限迴圈序列

d = its.cycle(('a', 'b', 'c'))

count = 0

for item in d:

print(type(item),item)

count += 1

if count>10:

break

collections 模組

namedtuple

namedtuple是乙個函式,它用來建立乙個自定義的tuple物件,並且規定了tuple元素的個數,並可以用屬性而不是索引來引用tuple的某個元素。

from collections import namedtuple

point = namedtuple('point',['x','y','z'])

p = point(1,2,3)

print(p.x)

deque

from collections import deque

a = deque([1,2,3,4])

print(a)

print(a.pop())

print(a.popleft())

print(a)

defaultdict

除了在key不存在時返回預設值,defaultdict的其他行為跟dict是完全一樣的。

from collections import defaultdict

d = defaultdict(lambda:'n/a')

d['a'] = 1

print(d['a'])

print(d['b'])

Python基礎知識點 高階函式

lambda只是乙個表示式,函式體比def簡單很多。lambda的主體是乙個表示式,而不是乙個 塊。僅僅能在lambda表示式中封裝有限的邏輯進去。lambda表示式是起到乙個函式速寫的作用。允許在 內嵌入乙個函式的定義。格式 lambda的一般形式是關鍵字lambda後面跟乙個或多個引數,緊跟乙個...

python大一知識點 python知識點複習

放假歸來,這幾天複習了一下好久不用的python,總結了一下知識點。語法基礎tuple與list的異同都由多個元素組成 tuple由 組成,list由組成 tuple不可變,list可變 tuple表示的是一種結構,而list表示的是多個事物的集合 tuple操作比list快 字串用法要點 轉義符和...

Hibernate高階知識點必備

hibernate.default schema 預設的資料庫。在建立資料庫表結構的時候會加上此字首 hibernate.dialect 配置hibernate資料庫的方言,hibernate可以針對特殊的資料庫進行優化!先看一下,hibernate的執行流程吧。如何獲取session物件 hibe...