今天我們要一起探索的是那個看似簡單卻藏著無限可能的小函數——print()。別看它日常,一旦掌握了它的創意用法,你的代碼不僅能說話,還能唱歌跳舞呢!讓我們一起,從基礎到高階,解鎖print()的新世界。
最基本,但也是最常用的,打印文本或變量。
message = "你好,世界!"print(message)
解讀:這是打印的起點,告訴計算機“我要展示這個信息”。
一次打印多個內容,用逗號分隔。
print("Python", "是", "有趣的")
效果:Python 是 有趣的,逗號自動添加了空格。
讓變量直接嵌入字符串。
name = "小明"print(f"歡迎,{name}!")
亮點:清晰,直觀。
改變多個參數間的分隔符。
print("蘋果", "香蕉", "橙子", sep=", ")
結果:蘋果, 香蕉, 橙子,適合制作列表。
默認是換行,但我們可以改。
print("不換行的問候", end=" ")print("繼續")
注意:這樣可以連續輸出在同一行。
利用換行特性,打印空行。
print()
簡單,但有時候就是這么需要。
結合f-string或.format(),精確控制數字顯示。
pi = 3.14159print(f"{pi:.2f}") # 保留兩位小數
科學:讓數字展現得既美觀又準確。
一行打印列表元素,用join美化。
fruits = ["蘋果", "香蕉", "橙子"]print(", ".join(fruits))
優雅:讓列表元素成為一句話。
遍歷列表時逐行打印。
for fruit in fruits: print(fruit)
動態:適合展示循環過程。
根據條件決定是否打印。
age = 18if age >= 18: print("成年了!")
邏輯:讓代碼有選擇地發言。
處理非UTF-8編碼的文本。
print("你好,世界!".encode('utf-8').decode('gbk'))
跨文化:在不同編碼間游刃有余。
用遞歸展示數字序列。
def recursive_print(n): if n > 0: print(n) recursive_print(n-1)recursive_print(5)
深入:理解遞歸,打印出倒序數字。
更底層的打印方式,不自動換行。
import syssys.stdout.write("直接寫入,不換行")
控制:適合需要精細控制輸出流的情況。
模擬下載進度。
for i in range(101): progress = "#" * i + " " * (100-i) print(f"/r下載進度: {progress}", end="")
動態:直觀的進度展示,提升用戶體驗。
利用ANSI轉義碼。
print("/033[31m紅色文字/033[0m")
美化:給終端一點顏色看看!
實時獲取當前時間。
from datetime import datetimeprint(datetime.now())
記錄:打印出代碼運行的時間點。
打印變量值,輔助調試。
def mystery_function(x): print(f"輸入是{x}") return x*2
實用:快速理解函數內部發生了什么。
pass語句配合print,用于占位。
def later(): print("正在開發...") pass
占位:清晰表明意圖,而不影響程序執行。
捕獲異常時打印錯誤詳情。
try: 1/0except Exception as e: print(e)
安全:優雅處理錯誤,知道哪里出了問題。
將輸出導向文件。
with open("output.txt", "w") as file: print("這是輸出到文件的內容", file=file)
持久:將信息保存,便于后續查看。
目標:創建一個簡單的日志記錄器,記錄程序運行的關鍵信息到文件和控制臺。
def log_message(message, log_file="app.log"): with open(log_file, "a") as file: timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S") print(f"[{timestamp}] {message}", file=file) print(f"[{timestamp}] {message}")log_message("程序開始執行")# 程序其他部分...log_message("關鍵任務完成")
解讀:這里結合了打印到控制臺和文件的技術,以及時間戳的生成,非常適合于監控程序狀態。
練習:嘗試修改上面的log_message函數,使其能區分不同的日志級別(如INFO、WARNING、ERROR),并以不同顏色打印到控制臺。
創建一個更強大的打印函數,支持更多定制化需求,比如控制輸出顏色、格式等。
def custom_print(msg, color="white", file=sys.stdout): colors = { 'white': '/033[0m', 'red': '/033[91m', 'green': '/033[92m', 'blue': '/033[94m' } print(f"{colors[color]}{msg}/033[0m", file=file)custom_print("這是藍色的文字", color="blue")
總結:通過這些實戰技巧和深入理解,你不僅學會了如何創造性地使用print函數,還能在實際項目中靈活運用,提升代碼的可讀性和功能性。
本文鏈接:http://www.tebozhan.com/showinfo-26-94580-0.htmlPython print 函數的 20 種創意用法揭秘
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com