2019 08 13學習整理

2022-08-13 06:12:17 字數 1865 閱讀 6305

條件成立時的返回值 if 條件 else 條件不成立時的返回值

x=10

y=20

print(f"x if x>y else y: ")

x if x > y else y: 20

[expression for item1 in iterable1 if condition1

for item2 in iterable2 if condition2

...for itemn in iterablen if conditionn

]類似於

res=

for item1 in iterable1:

if condition1:

for item2 in iterable2:

if condition2

...for itemn in iterablen:

if conditionn:

```python

print(f"[i for i in range(10)]: ")

[i for i in range(10)]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

print(f"[i2 for i in range(10)]: ")

[i**2 for i in range(10)]: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print()

yield的英文單詞意思是生產,在函式中但凡出現yield關鍵字,再呼叫函式,就不會繼續執行函式體**,而是會返回乙個值。

def my_range(start, stop, step=1):

while start < stop:

yield start

start += 1

g = my_range(0, 3)

print(f"list(g): ")

list(g): [0, 1, 2]

列表推導式相當於直接給你一筐蛋,而生成器表示式相當於給你乙隻老母雞。

匿名函式,他沒有繫結名字,使用一次即被收回,加括號既可以執行。

匿名函式通常與max()、sorted()、filter()、sorted()方法聯用。

salary_dict =
1.如果我們想從上述字典中取出薪資最高的人,我們可以使用max()方法,但是max()預設比較的是字典的key。

首先將可迭代物件變成迭代器物件

res=next(迭代器物件),將res當做引數傳給key指定的函式,然後將該函式的返回值當做判斷依據

2.如果我們想對上述字典中的人,按照薪資從大到小排序,可以使用sorted()方法。

sorted()工作原理:

首先將可迭代物件變成迭代器物件

res=next(迭代器物件),將res當做引數傳給第乙個引數指定的函式,然後將該函式的返回值當做判斷依據。

3.如果我們想對乙個列表中的某個人名做處理,可以使用map()方法。

map()工作原理:

首先將可迭代物件變成迭代器物件

res=next(迭代器物件),將res當做引數傳給第乙個引數指定的函式,然後將該函式的返回值作為map()方法的結果之一。

4.如果我們想篩選除名字中含有'sb'的名字,我們可以使用filter()方法。

filter()工作原理:

首先將可迭代物件變成迭代器物件

res=next(迭代器物件),將res當做引數傳給第乙個引數指定的函式,然後filter會判斷函式的返回值的真假,如果為真則留下。

模擬測試20190813

不刪freopen身敗名裂.jpd 本來考場上拿到了170pts,然而由於蒟蒻太菜了沒有刪freopen爆掉了100pts 如果下一場不能翻盤的話基本就和第一機房說拜拜了吧 這次考試過程整體還算可以,沒有急躁和過多的功利心,能只一心投入自己的思考中 然而後果就是為了調t3沒有檢查t1導致t1爆零 下...

SHMenuBar學習整理

stuido 2008 new project other languages virual c smart device win32 smart device project 生成的工程模型比較簡潔,下方menu bar 左邊是乙個用來退出程式的soft key,右邊是乙個選單。牽扯到的知識點 1...

Shader學習整理

好久沒寫部落格了,研究了一段時間shader,整理一下 unity的shader包含三種,固定渲染管線,cg片段,su ce表面著色器,unity推薦su ce表面著色器,寫起來簡單,很多東西unity都做好了,實際中往往看具體需求而定,一般選cg片段和su ce表面著色器。然而不管怎麼說,基礎理論...