第4 6節 print import及斷言

2021-09-23 10:08:23 字數 1524 閱讀 5164

一、print函式

前面第二章介紹了print的語法,其語法如下:

print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=false)

其中有幾個引數,分別說明一下:

sep:表示前面列印的幾個引數之間的分隔符是什麼,預設是乙個空格,我們可以替換成為我們想要的字串,甚至是乙個字串變數;

end:表示語句最後列印的內容,預設為換行符,如果想要輸出後不換行,將end設定為空字串就可以,即end=』』;

file:表示輸出的內容放到哪個檔案,預設是放到標準輸出;

flush:表述是否重新整理輸出流。

後面兩個引數我們暫且無需關注,sep可以多用一下,這樣可以自己控制輸出內容的格式。

print語法使用非常簡單,大家都可以多練習一下,在此不舉例說明了。

二、import語句

import是從已有的模組(含類)中匯入相關方法和屬性,可以利用已有的功能迅速開發新的功能,是python開放的乙個重要組成部分。第二章介紹import語句時,介紹了三種用法:

1、import 模組名

2、from 模組名import 方法或屬性名

3、from 模組名import  *

其實還有如下用法:

1、  from 模組名import 方法或屬性名1, 方法或屬性名2,…

該方法可以一次匯入多個方法或屬性。

2、 import 模組名 as 模組別名

這個方法將匯入模組起個別名,後面使用時直接用別名,這種方法一般出於兩個目的,一是模組名太長,為了後面使用簡寫,另外就是起個容易記的別名。

3、 from 模組名import 方法或屬性名1 as 方法別名1,…

這個方法是將匯入方法起別名,後面使用時直接使用別名,這種方法一般出於三個目的,一是方法或屬性名太長,為了後面使用簡寫,另外就是起個容易記的別名,三是防止不同模組出現相同的方法或屬性時可以通過別名進行區分。

定義了別名的地方使用時就可以直接使用別名。例如:

from copy import copy as cp,deepcopy as dcp

使用時就可以直接用cp、dcp函式了。

三、斷言

在沒完善乙個程式之前,我們不知道程式在**會出錯,與其讓它在執行最崩潰,不如在出現錯誤條件時就崩潰,這時候就需要assert斷言。python assert 斷言語法如下:

assert 表示式 [, 引數]

其中的表示式就是斷言要檢查的條件,當表示式對應值為false時則終止當前程式執行,給出引數後面的資訊丟擲異常。

注意:1、是表示式為false終止程式執行,不是true,這個與if語句不同;

2、可選引數是用於提供錯誤資訊,便於精確判斷錯誤;

3、 斷言語句在python的除錯**時執行,在python**的優化級別optimize為1時不會執行,具體優化級別的設定參考python命令列引數-o

老猿python(系列文章用於逐步介紹老猿學習python後總結的學習經驗,這些經驗有助於沒有接觸過python的程式設計師可以很容易地進入python的世界。 

實習第46天

為期2個月的實習終於快要結束了,乙個暑假也就這麼過去了,仔細回想一下自己也沒去廈門什麼地方好好玩一玩,還是挺可惜的,畢竟廈門的小島氛圍感覺還是挺好的,哪次有空一定要好好結伴出門遊玩一趟,輕鬆自在一下,只是這次來還是有很多事要做,自然不能放下擔子大膽地玩,不過能在這個地方生活一段時間也是個不錯的體驗,...

web第4 6章總結

把 發布到web上,最好的方法是找一家託管公司託管你的web頁面。www.yue.com 加粗的是伺服器的名字,斜體部分是網域名稱,網域名稱是乙個唯一的名字,用來唯一標識 檔案傳輸協議 ftp 是向伺服器傳輸web頁面和內容的常用方法。見130頁。http稱為超文字傳輸協議,是乙個請求和響應協議,用...

LeetCode第46題 全排列

給定乙個 沒有重複 數字的序列,返回其所有可能的全排列。示例 輸入 1,2,3 輸出 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 全排列問題都可以用dfs 深度優先遍歷 解決,不過這個題是帶權型別的 自稱 所以需要標記位。大致畫了個圖如下 param nums 傳入陣列 ...