Python 必殺技:用 print() 函數實現的三個特效

      網友投稿 1136 2025-04-02

      print() 應該是初學者最先接觸到的第一個 Python 函數,因為幾乎所有的啟蒙課程都是從 print(‘Hello world’) 開始的。事實上, print() 也是程序員使用頻率最高的函數之一,同時也是很多程序員喜歡的代碼調試利器。但是關于 print() 函數,你真的了解嗎?


      1. 打字機效果

      不了解 print() 的 flush 參數,很難實現下圖所示的打字機效果:

      Python 必殺技:用 print() 函數實現的三個特效

      print() 像個調皮的小朋友,你讓他幫你打印,他一定會做,但未必是立即去做,也許會攢夠了多個打印任務才執行一次。設置 flush=True,可以讓這位小朋友立刻去執行命令。

      # -*- coding: utf-8 -*- import time def printer(text, delay=0.2): """打字機效果""" for ch in text: print(ch, end='', flush=True) time.sleep(delay) printer('玄鐵重劍,是金庸小說筆下第一神劍,持之則無敵于天下。')

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      2. 旋轉式進度指示

      Linux 系統文本界面下,最常用的進度指示是用橫豎斜杠構成的旋轉圖案。

      Python也可以輕松實現這個效果,秘訣就在于 ‘\b’ 字符。 ‘\b’ 相當于鍵盤上的退格鍵,可以讓我們把剛剛打印過的最后一個字符擦掉重新打印。這個效果,同樣需要設置參數 flush 為真。

      # -*- coding: utf-8 -*- import time def waiting(cycle=20, delay=0.1): """旋轉式進度指示""" for i in range(cycle): for ch in ['-', '\\', '|', '/']: print('\b%s'%ch, end='', flush=True) time.sleep(delay) waiting()

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      反轉字符順序,就可以改變旋轉方向。將第一個字符 ‘-’ 改成 '-- ',還可以實現這樣的效果:

      3. 覆蓋式打印效果

      ‘\b’ 的作用是回退一個字符,’\r’ 則可以退回到行首。借助于 ‘\r’,可以實現整行覆蓋式的打印效果:

      需要注意的是,整行覆蓋的話,新的字符串長度不能小于原字符串長度,否則會留下前一次的打印內容。這個效果,同樣需要設置參數 flush 為真。

      # -*- coding: utf-8 -*- import time def cover(cycle=100, delay=0.2): """覆蓋式打印效果""" for i in range(cycle): s = '\r%d'%i print(s.ljust(3), end='', flush=True) time.sleep(delay) cover()

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      Python

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:WPS表格的數據透視表功能怎樣統計分類數據(wps表格怎么用數據透視表進行統計)
      下一篇:什么是無代碼,無代碼開發平臺有哪些?
      相關文章
      亚洲Av无码专区国产乱码DVD| 亚洲国产成人久久一区WWW| 国产亚洲成人久久| 亚洲AV成人潮喷综合网| 亚洲精品理论电影在线观看| 亚洲大成色www永久网址| 精品丝袜国产自在线拍亚洲| 国产成人精品亚洲2020| 亚洲18在线天美| 亚洲一区二区三区国产精品无码| 亚洲成人午夜电影| 亚洲午夜一区二区电影院| 亚洲乱码中文字幕小综合| 亚洲AV无码成人专区| 亚洲av永久无码精品三区在线4| 亚洲一区二区三区91| 国产精品亚洲一区二区麻豆| 一本色道久久综合亚洲精品蜜桃冫 | 亚洲精品tv久久久久| 亚洲国产精品尤物YW在线观看| 亚洲国产精品成人| 久久久久亚洲AV成人网人人软件| 国产成人精品曰本亚洲79ren| 国产亚洲av人片在线观看| 亚洲精品国产字幕久久不卡| 亚洲av日韩av高潮潮喷无码| 精品亚洲成AV人在线观看| 亚洲国产人成在线观看| 国产成人亚洲综合网站不卡| 亚洲aⅴ天堂av天堂无码麻豆| 丁香亚洲综合五月天婷婷| 中文字幕日韩亚洲| 亚洲男人天堂av| 亚洲人成片在线观看| 亚洲国产欧美一区二区三区| 亚洲国产a级视频| 好看的电影网站亚洲一区| 亚洲视频一区在线观看| 亚洲中文字幕乱码一区| 国产av无码专区亚洲av毛片搜| 国产性爱在线观看亚洲黄色一级片|