一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是Python的相對路徑

汽車電子技術(shù) ? 來源:安迪python學(xué)習(xí)筆記 ? 作者:安迪python學(xué)習(xí)筆記 ? 2023-02-23 10:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    1. 知識回顧
    1. 什么是相對路徑
    1. 相對路徑的語法
    1. 查看相對路徑的方法
    1. 寫出所有txt文件的相對路徑
    • 5.1 同目錄
    • 5.2 上級目錄
    1. 用相對路徑讀取txt文件
    • 6.1 讀取旅游.txt
    • 6.2 讀取旅游經(jīng)費(fèi).txt
    • 6.3 讀取筆記.txt和new.txt
    • 6.4 讀取目標(biāo).txt文件
    1. 上2級目錄
    • 7.1 同級目錄
    • 7.2 上級目錄
    • 7.3 上2級目錄
    • 7.4 有分支的上級目錄
    1. 總結(jié)

1. 知識回顧

絕對路徑是指文件在硬盤上真正存在的路徑。

就是從盤符(C盤、D盤、E盤、F盤)開始一直到文件所在的具體位置。

絕對路徑 = 郵寄地址

絕對路徑就相當(dāng)于生活中的郵寄地址,郵寄地址總是從省份開頭,然后到市縣、到街區(qū)再到具體門牌號。

武漢大學(xué)的地址是:湖北省武漢市武昌區(qū)八一路299號。這就是一個(gè)絕對路徑,通常是郵寄東西才會(huì)用的地址。

2. 什么是相對路徑

相對路徑 = 打車地址

相對路徑的相對,顧名思義就是相對某個(gè)參考對象而言的。

假設(shè)你本人已經(jīng)在武漢市,你打車的時(shí)候你會(huì)跟司機(jī)說去武漢大學(xué),或者說是去武昌區(qū)八一路。

你肯定不會(huì)跟司機(jī)說去湖北省武漢市某某地方,省份和市通常是被你省略了。

Python中的相對路徑基本等同于打車地址這一概念。

相對路徑是針對當(dāng)前文件夾這一參考對象,來描述文件路徑的形式。

當(dāng)前文件夾是指我們編程使用的編輯器打開的文件夾。

【溫馨提示】

我剛開始接觸相對路徑的時(shí)候,總是以打開的py文件為參考對象,相對路徑總是報(bào)錯(cuò)。

后來琢磨了下,才發(fā)現(xiàn),當(dāng)前文件夾不是指py文件所在的文件夾,是指編輯器打開的文件夾。

3. 相對路徑的語法

相對路徑使用兩個(gè)特殊符號表示:點(diǎn)(.) 和雙點(diǎn)(..)。

一個(gè)點(diǎn). 表示文件或文件夾所在的當(dāng)前目錄。

兩個(gè)點(diǎn).. 表示當(dāng)前目錄的上一級目錄。

上n級就用n個(gè).. 表示。

找相對路徑的重點(diǎn)在于找到編輯器打開的文件夾。

4. 查看相對路徑的方法

我用的是vscode編輯器,相對路徑的參考對象就是我的編輯器打開的文件夾。

現(xiàn)在,我用vscode打開名為生活的文件夾。

圖片

68-1打開文件夾

選擇生活文件夾。

圖片

68-2生活

這一步很重要,vscode打開的文件夾不同,則相對路徑就不同。

  1. 單擊vscode編輯器左上角的資源管理器,下面會(huì)出現(xiàn)一個(gè)當(dāng)前文件夾的文件目錄;
  2. 鼠標(biāo)右鍵點(diǎn)擊旅游.txt文件;
  3. 點(diǎn)擊復(fù)制相對路徑,就能得到旅游.txt文件的相對路徑,如下所示:
旅游.txt

圖片

68-3復(fù)制相對路徑

【備注】

在當(dāng)前文件夾下,vscode省略了.\\,所有才得到了上面的相對路徑。

.\\是可以省略的。

.\\要不要程序都不會(huì)報(bào)錯(cuò),大家根據(jù)自己的習(xí)慣編寫即可。

旅游.txt文件的相對路徑完整的表述如下所示:

.\\旅游.txt

【語法解析】

.\\表示當(dāng)前文件夾,即.\\指代生活文件夾。

同樣的方法,查看旅游經(jīng)費(fèi).txt的相對路徑,如下所示:

年度預(yù)算\\旅游經(jīng)費(fèi).txt

旅游經(jīng)費(fèi).txt文件的相對路徑完整的表述如下所示:

.\\年度預(yù)算\\旅游經(jīng)費(fèi).txt

5. 寫出所有txt文件的相對路徑

【準(zhǔn)備工作】

年度預(yù)算文件夾里新建一個(gè)絕對.py文件。

【寫相對路徑】

當(dāng)前我打開的文件夾為生活,即當(dāng)前目錄為生活

那我們要編輯的所有文件的相對路徑就是相對于生活文件夾來確定的。

圖片

68-4當(dāng)前文件夾

5.1 同目錄

旅游.txt和旅游經(jīng)費(fèi).txt文件都在生活文件里,即在當(dāng)前目錄下,相對路徑用.\\表示:

旅游.txt的相對路徑為:.\\旅游.txt

旅游經(jīng)費(fèi).txt的相對路徑為.\\年度預(yù)算\\旅游經(jīng)費(fèi).txt

5.2 上級目錄

筆記.txt和new.txt在安迪文件夾中,安迪文件夾是生活文件的上一級,是上層目錄,相對路徑用..\\表示:

筆記.txt的相對路徑為..\\筆記.txt

new.txt的相對路徑為..\\\\new.txt

目標(biāo).txt文件在安迪文件夾下的工作文件夾里,安迪文件夾同樣是上層目錄,相對路徑同樣用..\\表示:

目標(biāo).txt的相對路徑為:..\\工作\\目標(biāo).txt

6. 用相對路徑讀取txt文件

6.1 讀取旅游.txt

在絕對路徑中,一個(gè)點(diǎn). 表示文件所在的當(dāng)前目錄。

當(dāng)前我打開的文件夾為生活,即當(dāng)前目錄為生活。

旅游.txt就在當(dāng)前生活文件夾,因此相對路徑為.\\旅游.txt。

讀取旅游.txt代碼如下:

txt = open ('.\\旅游.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

我想去西藏!

在當(dāng)前文件夾下,.\\可以省略:

txt = open ('旅游.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

我想去西藏!

6.2 讀取旅游經(jīng)費(fèi).txt

當(dāng)前我打開的文件夾為生活,即當(dāng)前目錄為生活。

旅游經(jīng)費(fèi).txt在當(dāng)前生活文件夾里的年度預(yù)算文件夾里,因此相對路徑為.\\年度預(yù)算\\旅游經(jīng)費(fèi).txt。

讀取旅游經(jīng)費(fèi).txt代碼如下:

txt = open ('.\\年度預(yù)算\\旅游經(jīng)費(fèi).txt',encoding='utf-8')
print(txt.read())

【終端輸出】

旅游經(jīng)費(fèi)2萬元。

在當(dāng)前文件夾下,.\\可以省略:

txt = open ('年度預(yù)算\\旅游經(jīng)費(fèi).txt',encoding='utf-8')
print(txt.read())

【終端輸出】

旅游經(jīng)費(fèi)2萬元。

6.3 讀取筆記.txt和new.txt

筆記.txt和new.txt在安迪文件夾中,安迪文件夾是生活文件的上一級,是上層目錄,相對路徑用..\\表示:

筆記.txt的相對路徑為..\\筆記.txt

txt = open ('..\\筆記.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

這是我的第300篇筆記!

讀取new.txt

txt = open ('..\\\\new.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

路徑里含有轉(zhuǎn)義字符,程序會(huì)報(bào)錯(cuò)!

\\n會(huì)被認(rèn)為成轉(zhuǎn)義字符,要多加一個(gè)反斜杠\\,即為\\\\。

6.4 讀取目標(biāo).txt文件

目標(biāo).txt文件在安迪文件夾下的工作文件夾里,安迪文件夾同樣是上層目錄,相對路徑同樣用..\\表示:

目標(biāo).txt的相對路徑為:..\\工作\\目標(biāo).txt

txt = open ('..\\工作\\目標(biāo).txt',encoding='utf-8')
print(txt.read())

【終端輸出】

2023年的目標(biāo)是新增1萬個(gè)關(guān)注者!

這里的..\\指代安迪文件夾。

7. 上2級目錄

剛才我們的編輯器打開的是生活文件夾,我們是在路徑.py中編寫代碼。

我們現(xiàn)在更換打開的文件夾。

用vscode編輯器打開年度預(yù)算文件夾,在絕對.py文件中編寫代碼。注意觀察相對路徑的變化。

圖片

68-5年度預(yù)算

7.1 同級目錄

旅游經(jīng)費(fèi).txt和年度預(yù)算在同一個(gè)文件夾里,屬于統(tǒng)計(jì)目錄,用.\\表示:

txt = open ('.\\旅游經(jīng)費(fèi).txt',encoding='utf-8')
print(txt.read())

【終端輸出】

旅游經(jīng)費(fèi)2萬元。

7.2 上級目錄

旅游.txt文件是在生活文件夾里,相對于年度預(yù)算文件夾,是上級目錄,用..\\表示:

txt = open ('..\\旅游.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

我想去西藏!

7.3 上2級目錄

筆記.txt和new.txt相對于年度預(yù)算文件夾而言,在上級文件夾生活的上級文件夾安迪里,我稱為上2級目錄,上2級目錄,用兩個(gè)..\\表示:

txt = open ('..\\..\\筆記.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

這是我的第300篇筆記!

\\n會(huì)被程序默認(rèn)為轉(zhuǎn)義字符,記得多加一個(gè)反斜杠\\,即改寫為\\\\

txt = open ('..\\..\\\\new.txt',encoding='utf-8')
print(txt.read())

【終端輸出】

路徑里含有轉(zhuǎn)義字符,程序會(huì)報(bào)錯(cuò)!

7.4 有分支的上級目錄

目標(biāo).txt文件夾是在年度預(yù)算文件夾的上2級目錄下的工作文件夾,我把這種情況稱為有分支,有分支的情況下多添加一個(gè)分支的文件夾名即可。

txt = open ('..\\..\\工作\\目標(biāo).txt',encoding='utf-8')
print(txt.read())

【終端輸出】

2023年的目標(biāo)是新增1萬個(gè)關(guān)注者!

8. 總結(jié)

.\\表示當(dāng)前目錄,指的是當(dāng)前文件夾,打開的是生活文件夾,.\\就代表生活;打開的是年度預(yù)算文件夾,.\\就代表年度預(yù)算。

..\\表示上一級目錄,以打開年度預(yù)算文件夾為例,..\\就表示年度預(yù)算文件夾的上級文件夾生活。

..\\..\\表示上2級目錄,以打開年度預(yù)算文件夾為例,第1個(gè)..\\代表的是上2級的文件夾安迪,第2個(gè)..\\代表的上級文件夾生活

【錯(cuò)誤提示】

txt = open ('..\\生活\\旅游.txt',encoding='utf-8')
print(txt.read())

這是部分初學(xué)者會(huì)犯的錯(cuò)誤。

初學(xué)者認(rèn)為..\\表示上一級,然后再寫上級目錄的文件夾名稱生活。

上述代碼錯(cuò)誤的地方在于多添加了\\生活。

大家注意,..\\就已經(jīng)指代了生活文件夾,只有有分支的情況下,才會(huì)寫文夾名稱。

大家可以理解成直系親屬是直接用..就能指代的。

只有旁系親屬才需要寫文件夾名稱。

相對路徑的概念初學(xué)者會(huì)有點(diǎn)迷茫,但使用vscode的同學(xué)可以直接查看,多試幾次就明白了。

相對路徑的概念很重要,當(dāng)爬蟲的時(shí)候通常要保存的文件都使用相對路徑,你不理解相對路徑,可能就找不到你爬到的文件了哦!圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    578

    瀏覽量

    25289
  • 形式
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    7631
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4825

    瀏覽量

    86466
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux中的相對路徑和絕對路徑就是這么簡單

    對路徑名和相對路徑名是在 Linux 上指定目錄或文件的虛擬地址的兩種方式。那么這兩種路徑類型之間有什么區(qū)別,您應(yīng)該在命令中使用哪一種?現(xiàn)在就讓我們一起來看看吧。
    發(fā)表于 11-25 09:07 ?2335次閱讀

    Python相對路徑轉(zhuǎn)化為絕對路徑

    編程語言python
    小凡
    發(fā)布于 :2022年09月09日 12:04:29

    相對路徑

    請問有沒有大蝦有關(guān)于相對路徑的資料,如果有的話否上傳共享下。
    發(fā)表于 07-19 10:10

    labview基路徑相對路徑

    各位大神,請教一下基路徑相對路徑是什么概念???
    發(fā)表于 07-23 11:08

    使用udl連接相對路徑的數(shù)據(jù)庫,報(bào)錯(cuò)

    使用udl連接相對路徑數(shù)據(jù)庫,數(shù)據(jù)庫和udl放在同一個(gè)文件夾,寫入數(shù)據(jù)時(shí)候報(bào)錯(cuò),提示路徑不對,怎么解決?udl內(nèi)容如下:[oledb]; Everything after this line
    發(fā)表于 08-13 23:51

    【新手求帶】labview在創(chuàng)建路徑時(shí),使用時(shí)間日期作為相對路徑,總是找不到路徑時(shí)怎么回事?

    【新手求帶】labview在創(chuàng)建路徑時(shí),使用時(shí)間日期作為相對路徑,總是找不到路徑時(shí)怎么回事?謝各路大神幫忙解答!??!
    發(fā)表于 04-25 15:28

    求助labview中創(chuàng)建路徑函數(shù)的名稱或相對路徑怎么設(shè)置

    labview中創(chuàng)建路徑函數(shù)的名稱或相對路徑怎么設(shè)置
    發(fā)表于 09-22 08:50

    請教關(guān)于Labview生成exe后的文件路徑問題

    在Labview里用了寫入測量文件并保存到一個(gè)文件夾下,下面會(huì)繼續(xù)調(diào)用該測量文件。生成exe之前可以,但是生成exe后在別人電腦上就不行了。生成的測量文件并沒有保存到指定位置??吹接刑诱f是相對路徑的問題,那這個(gè)測量文件的路徑怎么改成
    發(fā)表于 08-01 10:31

    請教關(guān)于CCS4 鏈接文件設(shè)置相對路徑問題

    CCS4的相對路徑
    發(fā)表于 08-07 06:01

    請問通過ccs6.0怎么設(shè)置文件的相對路徑

    TI工程師們:你好!請問通過ccs6.0怎么設(shè)置文件的相對路徑?就是無論怎么移動(dòng)工程,編譯后都不會(huì)報(bào)錯(cuò)。 謝謝!
    發(fā)表于 09-14 11:38

    編譯器配置不允許使用相對路徑

    我最近遇到了一個(gè)問題,當(dāng)我試圖與一個(gè)同事共享一個(gè)項(xiàng)目時(shí),我認(rèn)為如果我能把這個(gè)特性添加到創(chuàng)建者的下一個(gè)版本中,那么它可能是容易解決的。特別是“附加包含目錄”編譯器配置并在當(dāng)前不允許被使用相對路徑。我
    發(fā)表于 03-08 12:00

    LabVIEW絕對路徑相對路徑

    路徑方式有兩種,相對路徑和絕對路徑,由于移植性原因,建議使用相對路徑,但相對路徑在開發(fā)環(huán)境與運(yùn)行環(huán)境下的
    發(fā)表于 07-12 10:03

    調(diào)用dll的vi在拷到別的電腦后,dll的絕對路徑發(fā)生變化了,怎么讓vi自動(dòng)找到dll文件

    拷過來后,vi無法運(yùn)行,因?yàn)檎也坏絛ll文件,調(diào)用庫節(jié)點(diǎn)里面的dll路徑還是原來的,而實(shí)際dll文件的路徑肯定已經(jīng)變了,但dll與vi的相對路徑沒有變化,如何讓vi自動(dòng)找到dll,而不需要每次手動(dòng)重新選擇
    發(fā)表于 12-23 11:54

    keil軟件報(bào)錯(cuò),添加的.h文件找不到其相對路徑

    ..\\\\User\\\\LED\\\\bsd_led.c(2): error:#5: cannot open source input file \"./led1/bsp_led.h\": No such file or directory添加的.h文件找不到其相對路徑
    發(fā)表于 10-14 14:56

    按日期保存(相對路徑).vi

    相對路徑保存當(dāng)前文檔,并且以日期的形式保存
    發(fā)表于 07-20 10:21 ?4次下載