1. 程式人生 > >Python exec,assert,lambda

Python exec,assert,lambda

概述

筆者由於自學Python,很多知識點較為散亂。
近日在整理中發現Python中還有三個筆者一知半解的保留字:exec,assert,lambda。
在此梳理如下。

exec

exec語句用來執行儲存在字串或檔案中的Python語句。
一段示例程式碼:

if __name__ == '__main__':
    exec "print('hello world')"

執行輸出:hello world

assert

assert也稱斷言,用來宣告某一個判斷的結果為真。如果在執行中,該判斷的結果不為真,則會丟擲一個AssertionError。
一段示例程式碼:

if
__name__ == '__main__': assert 2 > 3

丟擲錯誤異常:AssertionError

assert 主要用於驗證前提,確保程式碼的正確性。
當你肯定程式碼執行的前提能夠滿足但又不能完全肯定時,使用斷言的執行時檢查能幫你確保錯誤能被儘早地捕捉到。

lambda

lambda表示式也稱匿名函式,是對函式的再分類。
一段示例程式碼:

if __name__ == '__main__':
    a = ['three', 'two', 'four']
    a.sort(lambda x, y: cmp(len(x), len(y)))
    print(a
)

輸出結果['two', 'four', 'three']
當一個函式只在部分割槽域被重用時,使用匿名函式可以形成閉包,使程式碼更加安全與優雅。

相關推薦

Python exec,assert,lambda

概述 筆者由於自學Python,很多知識點較為散亂。 近日在整理中發現Python中還有三個筆者一知半解的保留字:exec,assert,lambda。 在此梳理如下。 exec exec語句用來執行儲存在字串或檔案中的Python語句。 一段示

Python中的lambda的簡單介紹

好的 cto turn 匿名 urn 這樣的 簡單介紹 對象 一個表 在學習python的過程中,lambda的語法經常出現,現在將它整理一下,以備日後查看。    1、lambda是什麽? 舉個例子如下: 1 func=lambda x:x+1 2 print(fu

Python中的lambda、map、filter、reduce、zip

sum http seq 是你 解包 range 匿名函數 三元 param lambda lambda是匿名函數,也就是沒有名字的函數。lambda的語法非常簡單: 下面是一個lambda表達式的簡單例子: 註意:我們可以把lambda表達式賦值給一個變量,然後通過這個

python 裏的Lambda

usr pan spa 匿名 lam class python 引入 ret 在python中有一個匿名函數lambda,匿名函數顧名思義就是指:是指一類無需定義標識符(函數名)的函數或子程序。最早引入匿名函數的是LISP語言,LISP是最早的函數編程式語言, #!/us

python學習之Lambda表達式

列表 語法 lsp 不用 一個 ssi pad turn java、 “Lambda 表達式”(lambda expression)是一個匿名函數,即沒有函數名的函數。Lambda表達式可以表示閉包(註意和數學傳統意義上的不同)。 1、python中的lambda表達式 L

Python自學之lambda表達式

作用 有時 問題 命名 lock show 我們 新的 python 對於某些Python函數,有時我們只會在很少的情況下使用一兩次,但是定義時又需要給函數名命名,使用lambda就不需要考慮命名的問題了,可以簡化代碼提高可讀性舉例:如下函數,計算x的2倍 >>

python return 及lambda函數

返回 函數 作用 mil python re int() lambda pri max return有兩個作用: 1.用來返回函數的運行結果,或者調用另外一個函數。比如max()函數 >>> def fun(a,b): #返回函數結果。 retur

Python中通過lambda拋異常的奇跡淫巧

doc func {} and 表達 什麽事 就是 expr class 假設我們需要一個函數什麽事都不幹,只是拋出異常(在某些系統中有些handler就是幹這事的),我們可以很直觀的寫出下面的代碼: def func(): raise Exception(&quo

Python exec 函數

文件中 代碼 流程 表達 pre 執行 exec spa 表達式 exec 函數 exec 執行儲存在字符串或文件中的Python語句,相比於 eval,exec可以執行更復雜的 Python 代碼,可用於簡單的流程控制 語法 exec obj 參數 odj--->

python:匿名函式lambda的用法

lambda與map,filter,reduce用法類似,使函式更為直觀,更容易理解。 lambda語句中,冒號前是引數,可以有多個,用逗號隔開,冒號右邊的返回值。 lambda語句構建的其實是一個函式物件。 a = lambda x,y:x**2+y**2 print(a(2,3))

pythonassert斷言的用法

  本文轉載自  python中assert斷言的用法 >>> assert 1 == 0 Traceback (most recent call last):  File "<stdin>", line 1, in &l

python基礎之lambda表示式

一. 在排序中的應用 例: >>> List=[{"name":"wan gang","age":22,"gender":"boy","score":583}, {"name":"zhang mei","age":21,"gender":"girl","score":53

(D10)Python-函式,lambda匿名函式

函式Function 函式變數 函式名是變數,他在建立函式時繫結一個函式 一個函式可以作用另一個函式的實參傳遞 可以吧一個函式傳遞給另一個函式,另一個函式的形參變數將繫結實參函式 示例1: 看懂如下程式

Python匿名函式(lambda)

result = lambda [arg1 [, arg2, .....]]:expression result:用於呼叫lambda表示式 [arg1 [, arg2, …]]:可選引數,用於傳遞

python sort搭配lambda實現多欄位排序

sort的常用方法你一定都會了,但是如果要排序的物件的每個元素又含有多個元素,要按指定的內部某個元素排序該怎麼實現呢?正常是這樣來做的: >>> def return_item(item): ... return item[1] >>> pairs

Python新手坑 | lambda、全域性變數與區域性變數、作用域、柯里化

從一個看似簡單的問題引入 首先我們來看這樣一個例子,假設你正試圖編寫一個函式,呼叫時可以返回0~4的平方,你選擇用for loop 和 lambda 來實現: squares = [] for x in range(5): squares.append

【強化學習】python 實現 saras lambda 例一

本文作者:hhh5460 本文地址:https://www.cnblogs.com/hhh5460/p/10147265.html 將例一用saras lambda演算法重新擼了一遍,沒有參照任何其他人的程式碼。僅僅根據虛擬碼,就擼出來了。感覺已真正理解了saras lambda演算法。記錄如下 0.

pythonassert的使用

assert : 斷言 為什麼使用assert 程式設計師斷定這個程式執行之後或者之前會有這樣的結果,如果不是,那就扔出一個錯誤。 語法: assert 表示式 [, 引數] 引數是一個字串,用於丟擲錯誤同時顯示 作用是判斷表示式是否成立(為真),如果不成立,丟擲As

Python 語法基礎 lambda, list comprehensions

lambda people = ['Dr. Christopher Brooks', 'Dr. Kevyn Collins-Thompson', 'Dr. VG Vinod Vydiswaran', 'Dr. Daniel Romero']def split_title_and_name(pers

關於Python中的lambda

lambda是Python程式語言中使用頻率較高的一個關鍵字。那麼,什麼是lambda?它有哪些用法? 這裡,我們通過閱讀各方資料,總結了關於Python中的lambda的“一個語法,三個特性,四個用法,一個爭論”。 一個語法 在Python中,lambda的語法是唯一的。其形式如下: