介紹
Python是一種高級編程語言,由Guido van Rossum於1991年發明並首次發表。Python開發人員可以使用Python語句來創建簡單且複雜的應用程序。Python的print語句可以用於輸出一條消息或變量。但是,如果將太多字符打印到一行上,則可能會導致水平滾動條。
正文
如何使用Python自動換行實現長消息
Python的print語句可以使用縮進來控制輸出的格式。當縮進的長度大於輸出窗口的寬度時,縮進會被自動截斷並自動換行。這意味着,您可以使用簡單的方法來自動換行您的輸出!
def print_wrap(string, width): """ 打印一個字符串, 自動換行, 控制每行輸出長度為width :param string: 目標字符串 :param width: 控制單行輸出長度 :return: """ while len(string) > width: # 取出先width個字符 this_line = string[:width] # 找到最後一個空格,將其視為換行符,否則新行直接切斷字符串 last_space = this_line.rfind(' ') if last_space == -1: # 沒找到空格,可以考慮這一行全都是單詞的特殊情況 print(this_line) string = string[width:] else: print(string[:last_space]) string = string[last_space + 1:] print(string)
注釋中,print_wrap()定義了此功能的實現,該方法需要2個參數,字符串和給定的輸出線寬。此方法從左到右迭代分割字符串,並在每個前綴後查找最後一個空格。如果找到了空格,則它只需要打印到該空格,並將其餘部分傳遞下一個方法繼續運行。如果沒有找到空格,則它將整個字符串打印為新一行。
Python代碼示例
def print_content(content_list, length): content_list = [str(i) for i in content_list] for content in content_list: print_wrap(content, length) print('\n')
這段代碼調用了打印包含多個內容的函數print_wrap(),並將任何需要換行的內容分為單獨的行。在輸出行之間添加了1個新行,因此每個行都會按照所需的方式出現。
Python中”\n”(換行符)的使用
在Python中,\n用於創建新行。這意味着如果您在字符串中放置一個\n,則該字符串將從當前位置開始新起一行。對於需要重複任務或較大的應用程序,這種使用會更加普遍,但是,\n可能會導致更長的行,因此您可能需要使用上面定義的自動換行函數。
print("這是第一行。\n這是第二行。")
此代碼將在第一個句子的結尾插入一個換行符,換到第二個句子,但不會自動換行,可能會造成不必要的水平滾動條。
如何使用os.linesep自動換行
os.linesep模塊定義了系統的分隔符。通過這種方式,您可以在不會增加過多字符的情況下實現文本自動換行功能。
import os os_linesep = os.linesep print('這個' + os_linesep + '換行了')
如果將此代碼插入Python腳本中,則友好的編程環境會將每個插入os_linesep的\data分成獨立行。這將是自動調整並排列行,而不是在單獨的行之間留下空間。
小結
Python語言中,自動換行技巧是一個非常常用的技巧,特別是在輸出變量長度很長的情況下。本文介紹了Python如何自動換行實現長消息,如何使用Python的os.linesep模塊,以及在Python中如何使用“\n”(換行符)。這些方法可以大大提高Python腳本的可讀性和易用性。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/308416.html