最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python?print無法打印\r的問題及解決

 更新時(shí)間:2023年08月10日 08:45:58   作者:痛快最重要  
這篇文章主要介紹了python?print無法打印\r的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

python print無法打印\r問題

最近在學(xué)習(xí)python的爬蟲,今天爬取內(nèi)容的時(shí)候發(fā)現(xiàn)了一個(gè)bug,讓我迷惑了好一會(huì),后面終于發(fā)現(xiàn)了問題所在。

在python中,當(dāng)遇到'\r'回車符時(shí),print的光標(biāo)要重新置為這一行的開頭而且不會(huì)換行,然后就會(huì)導(dǎo)致前面的內(nèi)容被覆蓋掉,導(dǎo)致打印的內(nèi)容出現(xiàn)缺失。

解決辦法

1.可以用字符串的替換把'\r'替換為空串""或者空格" "這樣就可以正常打印了。

替換方法:

import re
#三個(gè)參數(shù)分別是要替換的正則表達(dá)式,要替換成的字符串,要替換的目標(biāo),下面的意思就是將temp這個(gè)字符串的回車符'\r'全部替換為""空串
print re.sub(r'\r',"" , temp)

2.可以在后面添加'\n'換行符,這樣就會(huì)換行打印了,不會(huì)覆蓋掉之前的內(nèi)容。

import re
#三個(gè)參數(shù)分別是要替換的正則表達(dá)式,要替換成的字符串,要替換的目標(biāo),下面的意思就是將temp這個(gè)字符串的回車符'\r'全部替換為'\r\n'回車換行符
print re.sub(r'\r','\r\n' , temp)

注意:

這里的回車符只影響打印,要是你直接寫入文件是不會(huì)出現(xiàn)問題的,另外要注意因?yàn)閰?shù)要用到和返回值都是字符串,可以先在之前把其他的處理完了再替換打印,不然可能格式變化會(huì)影響之后的處理。

python中\(zhòng)r的意義及用法

\r的意義

  • \r表示將光標(biāo)的位置回退到本行的開頭位置
  • \b表示將光標(biāo)的位置回退一位

在python里print會(huì)默認(rèn)進(jìn)行換行,可以通過修改參數(shù)讓其不換行

(1) python2中可以在print語句的末尾加上逗號(hào),代碼如下:

print "hello",
print "world"

執(zhí)行結(jié)果

hello world

請(qǐng)按任意鍵繼續(xù). . .

(2)在python3里print是一個(gè)獨(dú)立函數(shù),可以通過修改它的默認(rèn)值來讓其不換行

def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
    """
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.
    """

將end參數(shù)改為其他的字符可以讓print不換行,來看代碼

print("Dream", "it", "possible", sep="-",end="/")
print("Big big world")

運(yùn)行結(jié)果如下:

Dream-it-possible/Big big world

Process finished with exit code 0

\r的應(yīng)用

利用\r可以實(shí)現(xiàn)很多有趣的小功能

在命令行實(shí)現(xiàn)倒計(jì)時(shí)功能

# 顯示倒計(jì)時(shí)
import time
for i in range(10):
    print("\r離程序退出還剩%s秒" % (9-i), end="")
    time.sleep(1)

運(yùn)行結(jié)果如圖

命令行實(shí)現(xiàn)轉(zhuǎn)圈功能

import time
lst = ["\\", "|", "/", "———"]
for i in range(20):
    j = i % 4
    print("\r" + lst[j], end="")
    time.sleep(0.2)

實(shí)現(xiàn)進(jìn)度條功能

# 進(jìn)度條功能
import time
for i in range(10):
    print("\r" + "■"*i, sep="", end="")
    time.sleep(0.2)
print("\n下載完成")

運(yùn)行效果如下

實(shí)現(xiàn)刪除效果功能

import time
s = "枝上柳綿吹又少,天涯何處無芳草"
l = len(s)
for i in range(l):
    print("\r" + s[:l-1-i] + "|", end="")
    time.sleep(0.15)

運(yùn)行效果如圖

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python實(shí)現(xiàn)一個(gè)自助取數(shù)查詢工具

    Python實(shí)現(xiàn)一個(gè)自助取數(shù)查詢工具

    在數(shù)據(jù)生產(chǎn)應(yīng)用部門,取數(shù)分析是一個(gè)很常見的需求,實(shí)際上業(yè)務(wù)人員需求時(shí)刻變化,最高效的方式是讓業(yè)務(wù)部門自己來取,減少不必要的重復(fù)勞動(dòng),本文介紹如何用Python實(shí)現(xiàn)一個(gè)自助取數(shù)查詢工具
    2021-06-06
  • Pyhton自動(dòng)化測試持續(xù)集成和Jenkins

    Pyhton自動(dòng)化測試持續(xù)集成和Jenkins

    這篇文章介紹了Pyhton自動(dòng)化測試持續(xù)集成和Jenkins,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Python直接賦值及深淺拷貝原理詳解

    Python直接賦值及深淺拷貝原理詳解

    這篇文章主要介紹了Python直接賦值及深淺拷貝原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • python三元運(yùn)算符實(shí)現(xiàn)方法

    python三元運(yùn)算符實(shí)現(xiàn)方法

    這篇文章主要介紹了python實(shí)現(xiàn)三元運(yùn)算符的方法,大家參考使用吧
    2013-12-12
  • python 高階函數(shù)簡單介紹

    python 高階函數(shù)簡單介紹

    這篇文章主要介紹了python 高階函數(shù)的相關(guān)資料,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • 基于Python的XSS測試工具XSStrike使用方法

    基于Python的XSS測試工具XSStrike使用方法

    XSS(Cross Site Scripting,跨站腳本攻擊)是一類特殊的Web客戶端腳本注入攻擊手段,通常指攻擊者通過“HTML注入”篡改了網(wǎng)頁,插入惡意的腳本,從而在用戶瀏覽網(wǎng)頁時(shí)控制瀏覽器的一種攻擊。
    2017-07-07
  • python中ImageTk.PhotoImage()不顯示圖片卻不報(bào)錯(cuò)問題解決

    python中ImageTk.PhotoImage()不顯示圖片卻不報(bào)錯(cuò)問題解決

    這篇文章主要給大家介紹了關(guān)于在python中ImageTk.PhotoImage()不顯示圖片卻不報(bào)錯(cuò)問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • python3處理含有中文的url方法

    python3處理含有中文的url方法

    今天小編就為大家分享一篇python3處理含有中文的url方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 用Python實(shí)現(xiàn)QQ游戲大家來找茬輔助工具

    用Python實(shí)現(xiàn)QQ游戲大家來找茬輔助工具

    這是一個(gè)用于QQ大家來找茬(美女找茬)的輔助外掛,開發(fā)的原因是看到老爸天天在玩這個(gè)游戲,分?jǐn)?shù)是慘不忍睹的負(fù)4000多。本來是想寫個(gè)很簡單的東西,但由于過程中老爸的多次嘲諷,逼得我不得不盡力完善,最后形成了一個(gè)小小的產(chǎn)品。
    2014-09-09
  • Django路由Path方法的使用詳解

    Django路由Path方法的使用詳解

    這篇文章主要介紹了Django路由Path方法的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-05-05

最新評(píng)論

星子县| 哈尔滨市| 渭南市| 清远市| 静海县| 丰镇市| 邵阳市| 西充县| 汶上县| 浪卡子县| 定西市| 肥城市| 杭州市| 四子王旗| 台南县| 高碑店市| 昌都县| 临桂县| 上犹县| 邵阳县| 无为县| 融水| 时尚| 鹤山市| 黔东| 康乐县| 泰安市| 湾仔区| 陇南市| 宝应县| 普洱| 塔河县| 太康县| 海晏县| 五台县| 浦东新区| 武定县| 平和县| 贵州省| 阳泉市| 威宁|