Python-da mütləq fayl yolunu necə əldə etmək olar?

"mydir/myfile.txt" kimi bir yol üçün, Python-dakı mövcud iş "mydir/myfile.txt" görə faylın mütləq yolunu necə tapmaq olar? Məsələn, Windows-da, mən başa düşə bilərəm:

 "C:/example/cwd/mydir/myfile.txt" 
416
09 сент. izb tərəfindən müəyyən 09 sentyabr 2008-09-09 13:19 '08 at 13:19 pm 2008-09-09 13:19
@ 7 cavab
 >>> import os >>> os.path.abspath("mydir/myfile.txt") 'C:/example/cwd/mydir/myfile.txt' 

Bu da artıq mütləq bir yol olduğunda işləyir:

 >>> import os >>> os.path.abspath("C:/example/cwd/mydir/myfile.txt") 'C:/example/cwd/mydir/myfile.txt' 
579
09 сент. cavab verildi sherbang 09 Sep 2008-09-09 13:21 '08 at 1:21 pm 2008-09-09 13:21
 >>> import os >>> os.path.abspath('mydir/myfile.txt') 'C:\\example\\cwd\\mydir\\myfile.txt' >>> 
border=0
42
09 сент. Cavab Will Harris Sep 09 tərəfindən verilir 2008-09-09 13:28 '08 at 13:28 pm 2008-09-09 13:28

Yeni Python 3.4 pathlib istifadə edə bilərsiniz. Müəlliflər pip install pathlib : "Bu kitabxananın məqsədi fayl sistemi yollarını işləyib sadə bir sinif hiyerarşisi təmin etmək və istifadəçilər tərəfindən həyata keçirilən ümumi hərəkətləri yerinə yetirməkdir".

Windows-da mütləq yol almaq üçün:

 >>> from pathlib import Path >>> p = Path("pythonw.exe").resolve() >>> p WindowsPath('C:/Python27/pythonw.exe') >>> str(p) 'C:\\Python27\\pythonw.exe' 

Və ya UNIX:

 >>> from pathlib import Path >>> p = Path("python3.4").resolve() >>> p PosixPath('/opt/python3/bin/python3.4') >>> str(p) '/opt/python3/bin/python3.4' 

Sənədlər burada: https://docs.python.org/3/library/pathlib.html

37
24 окт. Cavab twasbrillig verildi Oct 24 2014-10-24 04:05 '14 'da 4:05' də 2014-10-24 04:05

Daha da yaxşıdır, path.py modulunu yükləyin, bütün os.path funksiyaları və digər funksiyaları os.path üsullarından istifadə etmək üçün istifadə edilə bilən obyekt metodlarına os.path :

 >>> from path import path >>> path('mydir/myfile.txt').abspath() 'C:\\example\\cwd\\mydir\\myfile.txt' >>> 
17
12 сент. Cavab Tom 12 Sentyabr. 2008-09-12 09:53 '08 saat 09:53 'da 2008-09-12 09:53

Bu gün, unipath paketini unipath əsasında da istifadə edə bilərsiniz: http://sluggo.scrapping.cc/python/unipath/

 >>> from unipath import Path >>> absolute_path = Path('mydir/myfile.txt').absolute() Path('C:\\example\\cwd\\mydir\\myfile.txt') >>> str(absolute_path) C:\\example\\cwd\\mydir\\myfile.txt >>> 

Bu paketi istifadə edərək , ümumi os.path kommunallarına təmiz bir interfeys təqdim etdiyinə görə gəlirəm .

8
10 марта '13 в 20:11 2013-03-10 20:11 Cavab Rudolf Olah tərəfindən 10 Mart 2013, 20:11 'də verilir

Qlobu istifadə etməliyəm

Mövcud qovluğunuzdakı bütün növ faylları necə göstərmək olar:

 import glob for x in glob.glob(): print(x) 

Cari qovluqdakı bütün (məsələn) .txt fayllarının siyahısını necə göstərmək olar:

 import glob for x in glob.glob('*.txt'): print(x) 

Seçilən kataloqdakı bütün fayl növlərinin siyahısı necədir:

 import glob for x in glob.glob('C:/example/hi/hello/'): print(x) 

Bu sizə kömək etdi

1
07 авг. Cavab F. Taylor 07 avqustda verilir. 2016-08-07 13:14 '16 saat 13:14 'da 2016-08-07 13:14
 filePath = os.path.abspath(directoryName) filePathWithSlash = filePath + "\\" filenameWithPath = os.path.join(filePathWithSlash, filename) 
-2
29 апр. Cavab verilir frank__aguirre 29 Apr 2017-04-29 05:24 '17 də 5:24 2017-04-29 05:24 'də

etiketləri ilə əlaqədar digər suallar və ya sual verin