列印引數

你可以做的不僅僅是列印文字。print 還有幾個引數可以幫到你。

引數 sep:在引數之間放置一個字串。

你是否需要列印以逗號或其他字串分隔的單詞列表?

>>> print('apples','bannas', 'cherries', sep=', ')
apple, bannas, cherries
>>> print('apple','banna', 'cherries', sep=', ')
apple, banna, cherries
>>>

爭論 end:最後使用換行以外的東西

如果沒有 end 引數,所有 print() 函式都會寫一行,然後轉到下一行的開頭。你可以將其更改為不執行任何操作(使用空字串’’),或使用兩個換行符在段落之間加倍間距。

>>> print("<a", end=''); print(" class='jidn'" if 1 else "", end=''); print("/>")
<a class='jidn'/>
>>> print("paragraph1", end="\n\n"); print("paragraph2")
paragraph1

paragraph2
>>>

引數 file:將輸出傳送到 sys.stdout 以外的某個位置。

現在你可以將文字傳送到 stdout,檔案或 StringIO,而不關心你給出的內容。如果它像檔案一樣嘎嘎叫,它就像一個檔案。

>>> def sendit(out, *values, sep=' ', end='\n'):
...     print(*values, sep=sep, end=end, file=out)
... 
>>> sendit(sys.stdout, 'apples', 'bannas', 'cherries', sep='\t')
apples    bannas    cherries
>>> with open("delete-me.txt", "w+") as f:
...    sendit(f, 'apples', 'bannas', 'cherries', sep=' ', end='\n')
... 
>>> with open("delete-me.txt", "rt") as f:
...     print(f.read())
... 
apples bannas cherries

>>>

第四個引數 flush 將強制沖洗流。