উত্তর:
os.path.isabs
True
যদি পথটি নিখুঁত হয় তবে ফিরে আসে False
। ডকুমেন্টেশন বলছে এটি উইন্ডোতে কাজ করে (আমি এটি নিশ্চিত করতে পারি যে এটি ব্যক্তিগতভাবে লিনাক্সে কাজ করে)।
os.path.isabs(my_path)
এবং আপনি যদি যা চান তা হ'ল পরম পথ, এটি কিনা তা যাচাই করে বিরক্ত করবেন না, কেবল এটি পান abspath
:
import os
print os.path.abspath('.')
ব্যবহার os.path.isabs
।
import os.path
os.path.isabs('/home/user')
True
os.path.isabs('user')
False
প্রকৃতপক্ষে আমি মনে করি উপরোক্ত উত্তরগুলির কোনওটিরই আসল সমস্যাটির সমাধান হয়নি: ক্রস প্ল্যাটফর্মের পথগুলি। ওস.পাথ যা করে তা হ'ল 'পাথ' লাইব্রেরির ওএস নির্ভরশীল সংস্করণটি লোড করা। সুতরাং সমাধানটি স্পষ্টভাবে প্রাসঙ্গিক (ওএস) পাথ লাইব্রেরি লোড করা হয়:
import ntpath
import posixpath
ntpath.isabs("Z:/a/b/c../../H/I/J.txt")
True
posixpath.isabs("Z:/a/b/c../../H/I/J.txt")
False
def path_is_abs(p): return (len(p) > 1) and (p[0] == '/' or p[1] == ':')
python 3.4
পাথলিব থেকে পাওয়া যায়।
In [1]: from pathlib import Path
In [2]: Path('..').is_absolute()
Out[2]: False
In [3]: Path('C:/').is_absolute()
Out[3]: True
In [4]: Path('..').resolve()
Out[4]: WindowsPath('C:/the/complete/path')
In [5]: Path('C:/').resolve()
Out[5]: WindowsPath('C:/')
Path('\tmp').is_absolute()
সঠিকভাবে দেয় False
, অন্যদিকে os.path.isabs('\tmp')
ভুল দেয় True
। (কেউ কেউ মনে করেন যে \tmp
এটি উইন্ডোজে একটি চূড়ান্ত পথ, তবে এটি একটি নিখুঁত পাথের খুব অকেজো সংজ্ঞা জন্য সত্য ))
os.path.isabs('c:\\')
মিথ্যা প্রত্যাবর্তন করে।