溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python進階之路 3.1 神奇的print函數

發布時間:2020-07-23 04:07:44 來源:網絡 閱讀:316 作者:Python進階 欄目:編程語言

3.1 神奇的print函數

相信大家對print函數一定不陌生,因為在前面的章節,幾乎每個例子都使用了print函數,這個函數的功能就是在控制臺輸出文本。不過print在輸出文本時可以進行一些設置,以及輸出多參數字符串。

如果為print函數傳入多個參數值,那么print函數會將所有的參數值首尾相接輸出。

print("a","b","c","d","e")
a b c d e

可以看到,上面這行代碼輸出了a到e,共5個字母。在Python控制臺中輸出了"a b c d e"。很明顯是將這5個字符首尾相接輸出了。不過這些字母之間用空格分隔,這是print函數默認的分隔符,用于分隔輸出的多個參數值,這個默認設置是非常有用的。例如,執行下面的代碼,會在等號(=)后面加一個空格。

print("name =","Bill")
print("age =",30)
name = Bill
age = 30

其中等號(=)前面的空格是第1個參數值包含的。

print函數會為除了第1個參數值以外的其他參數值前面添加一個空格,這樣做,在需要用空格分隔的場景下,就不需要在每個參數值前面添加空格了。

不過這種默認設置有利有弊,在不需要用空格分隔時,print函數仍然會添加空格。例如,要輸出字符串"Apple,Orange,Banana"。其中Apple、Orange和Banana之間用逗號(,)分隔,逗號(,)與其英文單詞之間沒有空格。如果按照前面的做法,會有如下的代碼輸出這行字符串。

print("Apple",",", "Orange",",","Banana")
Apple , Orange , Banana

很明顯,逗號(,)前后都有空格。當然,可以將逗號(,)與前面的英文單詞合并,但逗號(,)與后面的英文單詞之間仍然會有空格。

解決這個問題的方法很多,例如可以用傳統的字符串相加的方式輸出字符串"Apple,Orange,Banana"。

print("Apple" + "," + "Orange" + "," + "Banana")

以上這個方法還是顯得有點雜亂,看得眼花繚亂的。那么下面我們在用一種特有的方法解決這個問題。在print函數最后添加sep=","。

print("Apple","Orange","Banana" sep = ",")

上面這個方法就顯得很整齊,觀賞性更高,更容易讓人理解。

print函數輸出字符串時,默認會在字符串結尾添加換行符(\n),這樣每次調用print函數輸出字符串,都會另起一行。不過有時希望調用多次print函數都在同一行輸出,這時可以在print函數最后加上end = " ",讓最后一個輸出字符串結尾符變成空格。

print("a",end = "")
print("b",end = "")
print("c",end = " ")
ab c

[例 3.1] 本例演示了print函數輸出參數值,修改默認多參數值分隔符,以及修改輸出字符串結尾字符的方法。

print("name =", "Bill")
# 輸出用空格分隔的多個參數值

print("age = ", 30)
# 輸出用空格分隔的多個參數值

print("Apple" + "," + "Orange" + "," + "Banana")
# 使用加號(+)鏈接字符串

print("Apple", "Orange", "Banana", sep=",")
# 使用sep修改多參數分隔符為逗號(,),然后輸出多參數值

print("Can", "you", "tell", "me", "how", "to", "get", "to", "the", "nearest", "tube", "station", sep="&")
# 使用sep修改多參數分隔符為"&",然后輸出多參數值

print("Hello", end=" ")
print("World")
# 修改輸出字符串結尾符為空格,這樣下次調用print函數,就會從同一行輸出內容

print("a", end="")
print("b", end="")
print("c", end="")
# 修改輸出字符串結尾符為長度為0的字符串,這樣下次調用print函數,輸出的內容不僅會在同一行,而且會首尾相接
name = Bill
age =  30
Apple,Orange,Banana
Apple,Orange,Banana
Can&you&tell&me&how&to&get&to&the&nearest&tube&station
Hello World
abc
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女