欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析Python字符串中的r和u的區(qū)別

 更新時(shí)間:2021年12月11日 09:57:37   作者:Orion's Blog  
在Python中,字符串前面我們經(jīng)??吹綍?huì)加一些前綴,例如u、r、b、f。這篇文章將帶大家簡(jiǎn)單了解一下字符串前加r(R)或u/(U)的前綴的區(qū)別,快來跟隨小編一起學(xué)習(xí)吧

Python中字符串前面我們經(jīng)??吹郊觬(R)或u/(U)的前綴,而這兩個(gè)符號(hào)是什么意思呢?

1.r(R)

r意為raw,表示不包含轉(zhuǎn)義字符的原生字符串。常見的轉(zhuǎn)義字符包括下列幾種:

轉(zhuǎn)義字符 描述
\(在行尾時(shí)) 續(xù)航符
\\ 反斜杠符號(hào)
' 單引號(hào)(字符串需要為""形式)
" 雙引號(hào)(需要字符串用需要為''形式)
\b 退格(Backspace)
\000
\n 換行
\v 縱向制表符
\t 橫向制表符

下面是幾個(gè)轉(zhuǎn)義字符的演示:

print("Hello\
,world")
# Hello,world
print("Hello\\,world")
# Hello\,world
print("Hello',world")
# Hello',world
print('Hello",world')
# Hello",world
print("Hello\b,world")
# Hell,world
print("Hello\000,world")
#Hello,world
print("Hello\n,world")
# Hello
# ,world
print("Hello\v,world")
# Hello
#      ,world
print("Hello\t,world")
# Hello   ,world
print("Hello\020,world")

r前綴的作用就是告訴解釋器,我這個(gè)字符串不包含轉(zhuǎn)義字符,比如字符串中如果包含'\n',則不將其視為換行符,而視為一個(gè)'\'字符和'n'字符來處理。如下面所示:

print("Hello,\nworld")
# Hello,
# world
print("Hello,\nworld")
# Hello,\nworld

r前綴最常見的用途是正則表達(dá)式,因?yàn)檎齽t匹配的模式經(jīng)常包含各種反斜杠等字符,我們不希望它被解析為轉(zhuǎn)移字符,因此需要加上'r'。

import re
str_pat= re.compile(r'\d+/\d+/\d+')
text = 'Today is 12/10/2021, yesterday is 12/11/2021'
res = str_pat.findall(text)
print(res)
['12/10/2021', '12/11/2021']

2.u(U)

u(U)前綴表示字符串的編碼方式為unicode。不僅包含中文在內(nèi)的任意字符串都可以采用unicode編碼。一般英文字符串在任何編碼的情況下都能正常解析,所以一般不用顯式添加u。然而中文最好要說明其編碼,否則編碼轉(zhuǎn)換時(shí)就會(huì)出現(xiàn)亂碼(比如本來用gbk編碼但拿unicode來解碼)。解決編碼問題一勞永逸的方法是在.py的文件頭添加如下內(nèi)容:

# coding: utf-8

補(bǔ)充

字符串前加b

例: response = b'<h1>Hello World!</h1>'???? # b' ' 表示這是一個(gè) bytes 對(duì)象

作用:

b" "前綴表示:后面字符串是bytes 類型。

用處:

網(wǎng)絡(luò)編程中,服務(wù)器和瀏覽器只認(rèn)bytes 類型數(shù)據(jù)。

如:send 函數(shù)的參數(shù)和 recv 函數(shù)的返回值都是 bytes 類型

附:

在 Python3 中,bytes 和 str 的互相轉(zhuǎn)換方式是

str.encode('utf-8')
bytes.decode('utf-8')

字符串前加f

import time
t0 = time.time()
time.sleep(1)
name = 'processing'
# 以 f開頭表示在字符串內(nèi)支持大括號(hào)內(nèi)的python 表達(dá)式
print(f'{name} done in {time.time() - t0:.2f} s')

輸出:

processing done in 1.00 s

參考文獻(xiàn)

[1] https://www.python.org/

[2] Martelli A, Ravenscroft A, Ascher D. Python cookbook[M]. " O'Reilly Media, Inc.", 2005.

到此這篇關(guān)于淺析Python字符串中的r和u的區(qū)別的文章就介紹到這了,更多相關(guān)Python字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python中使用.py配置文件的方法詳解

    python中使用.py配置文件的方法詳解

    這篇文章主要介紹了python中使用.py配置文件的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 解決jupyter notebook打不開無反應(yīng) 瀏覽器未啟動(dòng)的問題

    解決jupyter notebook打不開無反應(yīng) 瀏覽器未啟動(dòng)的問題

    這篇文章主要介紹了解決jupyter notebook打不開無反應(yīng) 瀏覽器未啟動(dòng)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python 多進(jìn)程和多線程使用詳解

    python 多進(jìn)程和多線程使用詳解

    這篇文章主要介紹了python 多進(jìn)程和多線程使用詳解,幫助大家更好得理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • Python數(shù)據(jù)可視化常用4大繪圖庫原理詳解

    Python數(shù)據(jù)可視化常用4大繪圖庫原理詳解

    這篇文章主要介紹了Python數(shù)據(jù)可視化常用4大繪圖庫原理詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 如何在Windows中安裝多個(gè)python解釋器

    如何在Windows中安裝多個(gè)python解釋器

    這篇文章主要介紹了如何在Windows中安裝多個(gè)python解釋器,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • opencv python統(tǒng)計(jì)及繪制直方圖的方法

    opencv python統(tǒng)計(jì)及繪制直方圖的方法

    這篇文章主要介紹了opencv python統(tǒng)計(jì)及繪制直方圖的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python字典取值全攻略之高效、簡(jiǎn)潔地獲取字典值的多種技巧

    Python字典取值全攻略之高效、簡(jiǎn)潔地獲取字典值的多種技巧

    這篇文章主要給大家介紹了關(guān)于Python字典取值全攻略之高效、簡(jiǎn)潔地獲取字典值的多種技巧,dictionary(字典)是除列表以外Python之中最靈活的數(shù)據(jù)類型,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • Python采用Django開發(fā)自己的博客系統(tǒng)

    Python采用Django開發(fā)自己的博客系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Python采用Django開發(fā)自己的博客系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 對(duì)Python信號(hào)處理模塊signal詳解

    對(duì)Python信號(hào)處理模塊signal詳解

    今天小編就為大家分享一篇對(duì)Python信號(hào)處理模塊signal詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python變量的定義和運(yùn)算符的使用

    Python變量的定義和運(yùn)算符的使用

    這篇文章主要介紹了Python變量的定義和運(yùn)算符的使用,Python和C/Java不同,在定義變量的時(shí)候不需要顯示的指定變量的類型,在賦值的時(shí)候自動(dòng)就會(huì)確定類型,需要的朋友可以參考下
    2023-05-05

最新評(píng)論