絕對路徑字串傳參特殊需求轉義

2021-08-19 15:52:23 字數 1765 閱讀 9108

在一次給open函傳參時,傳帶有\的路徑時,總是抱有一異常問題,異常問題為:

file"c:/users/keke/pycharmprojects/untitled/4moth/427/testline.py", line 7

string = 'c:\users

\keke

\desktop

\python

\p10c07\logs

\access.log'

syntaxerror: (unicode error) 'unicodeescape' codec can't

decode bytes in position 2-3: truncated \u******xx escape

經過報錯可知:syntaxerror:(unicode錯誤)』unicodeescape』編解碼器無法解碼位置2-3中的位元組:截斷\ u******xx轉義。

通過驗證:

from pathlib import path

p = path(r'c:\users

\keke

\desktop

\python

\p10c07\logs

\access.log')

string = 'c:\users

\keke

\desktop

\python

\p10c07\logs

\access.log'

if string == str(p):

print('ok')

報錯: file"c:/users/keke/pycharmprojects/untitled/4moth/427/testline.py", line 7

string = 'c:\users

\keke

\desktop

\python

\p10c07\logs

\access.log'

^syntaxerror: (unicode error) 'unicodeescape' codec

can't decode bytes in position 2-3: truncated \u******xx escape

很顯然問題出在\上,其實在任何字串或者程式語言中都要注意特殊字元\,只出現\時,要驗證是否需要轉義。

將**修改為如下設定:

from pathlib import path

p = path(r'c:\users\keke\desktop\python\p10c07\logs\access.log')

s = '''c:\\users\\keke\\desktop\\python\\p10c07\\logs\\access.log'''

st = 'c:\\users\\keke\\desktop\\python\\p10c07\\logs\\access.log'

if s == str(p):

print('ok')

with open(str(p),'r+') as f1:

for line in f1:

print(line)

with open(s,'r+') as f2:

for line in f2:

print(line)

with open(st,'r+') as f3:

for line in f3:

print(line)

驗證通過

hexagon絕對路徑

在 做什麼使用我就不說了,對大多數drivers來說都不會去接觸到,進一步的,也許拿不到要使用的版本。小問題會造成 煩。確定version oem a p build ms build.sh 或 build adspprocess.py target os.environ chipset os.en...

相對路徑絕對路徑

前兩天突然發現自己一直以來對相對路徑絕對路徑的理解都是錯的,於是趕緊查了相關資料。1.絕對路徑 絕對路徑是指檔案在硬碟上真正存在的路徑。例如 bg.jpg 這個是存放在硬碟的 e book 網頁布局 第2章 目錄下,那麼 bg.jpg 這個的絕對路徑就是 e book 網頁布局 第2章 bg.jpg...

絕對路徑 相對路徑

一 基本概念 1 相對路徑 相對於當前檔案的路徑。網頁中表示路徑一般使用這個方法。二 相對路徑常見的寫法 代表目前所在的目錄。開頭 代表根目錄。根目錄下有test1資料夾和image image1.jpg,test1下有index1.html檔案和test2資料夾。test2資料夾下有index2....