參考鏈接: Python | print()中的結束參數
需求:打印五個字符,在一行上?
代碼:?
i = 0?
while i< 5 :?
i += 1?
print(i,end=’’)?
結果: 1 2 3 4 5那么問題來了,為什么加一個end="" 就不換行了,就打印在一行上了呢?首先,我們要聊一聊print()這個內置函數了,它有哪些具體的參數呢?請看列表:??
通過函數參數我們可以看到。print()函數里面是默認換行的,具體換行參數是end="\n"。so,如果我們把參數end="\n"換成end=’'相當于去掉了換行符\n ,你可以試想一下,現在輸入的不是程序,而是你自己的打字,12345是不回車的。但是如果你輸入的是1\n ,就換行了。補充個知識點,在windows系統中,\n表示換行,n是new line 的縮寫,\r表示回到行首,表示回車。具體的歷史典故呢橋哥也是在不斷的摸索當中,但是我找到了一個來源,同志們可以參考一下。\r是回車符,\n是換行符 計算機還沒有出現之前,有一種叫做電傳打字機(Teletype Model 33)的玩意,每秒鐘可以打10個字符。但是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字符。要是在這0.2秒里面,又有新的字符傳過來,那么這個字符將丟失。 于是,研制人員想了個辦法解決這個問題,就是在每行后面加兩個表示結束的字符。一個叫做“回車”,告訴打字機把打印頭定位在左邊界;另一個叫做“換行”,告訴打字機把紙向下移一行。 這就是“換行”和“回車”的來歷,從它們的英語名字上也可以看出一二。?
后來,計算機發明了,這兩個概念也就被般到了計算機上。那時,存儲器很貴,一些科學家認為在每行結尾加兩個字符太浪費了,加一個就可以。于是,就出現了分歧。Unix 系統里,每行結尾只有“<換行>”,即“\n”;Windows系統里面,每行結尾是“<回車><換行>”。?
?
案例:?
?
??
? ?
? ?for i in range(10): print(i)?
? ?
??
?
0 1 2 3 4 5 6 7 8 9?
如果不想換行用 print(xxx,end=’’)?
案例:?
?
??
? ?
? ?for i in range(10): print(i,end=’’)?
? ?
??
?
0123456789?
如果想在最后一個輸出值后面給定指定方式輸出,可以 end='xxx’方式?
案例:?
?
??
? ?
? ?for i in range(10): print(i,end=’\t’) # 不換行,制表符?
? ?
??
?
0 1 2 3 4 5 6 7 8 9?
?
??
? ?
? ?for i in range(10): print(i,end=’’) #不換行,結尾后追加— 0123456789