পাইথনে হোম ডিরেক্টরি কীভাবে পাবেন?


917

আমার বর্তমান লগ-অন ব্যবহারকারীর হোম ডিরেক্টরি ডিরেক্টরি পেতে প্রয়োজন। বর্তমানে, আমি লিনাক্সে নিম্নলিখিতগুলি ব্যবহার করছি:

os.getenv("HOME")

তবে এটি উইন্ডোজে কাজ করে না। এটি করার সঠিক ক্রস-প্ল্যাটফর্ম উপায় কী?


4
এটি পাইথন ব্যবহার করে প্রকৃত ব্যবহারকারীর হোম ডিরেক্টরিটি কীভাবে খুঁজে পাওয়া যায় তার একটি সদৃশ চিহ্নিত করা হয়েছে , তবে আমি আবার খুলতে ভোট দিয়েছি কারণ এই উত্তরটি পাইথন 3 এ কাজ করে এবং পুরানো উত্তর দেয় না।
ডোর হাই আর্চ

উত্তর:


1634

আপনি os.path.expanduser ব্যবহার করতে চান ।
এটি নিশ্চিত করবে যে এটি সমস্ত প্ল্যাটফর্মে কাজ করে:

from os.path import expanduser
home = expanduser("~")

আপনি যদি পাইথন 3.5+ এ থাকেন তবে আপনি প্যাথলিব ব্যবহার করতে পারেন athপথ হুম () :

from pathlib import Path
home = str(Path.home())

47
এটি লক্ষ করা উচিত যে যদি ব্যবহারকারী উইন্ডোজের কোনও ডোমেনে লগইন করে থাকে এবং তাদের প্রোফাইল হোম ফোল্ডারটি সক্রিয় ডিরেক্টরিতে সেট করে থাকে তবে এটি স্থানীয় হোম ডিরেক্টরিটির পরিবর্তে ম্যাপযুক্ত নেটওয়ার্ক ফোল্ডারের প্রতিবেদন করবে
স্কেপ

7
pathlib.Path.home()Python3.5 অগ্রে (থেকে পাওয়া যায় docs.python.org/3/library/pathlib.html#pathlib.Path.home )
ইভান ডি পাজ Centeno

9
আমি অবাক হয়েছি কেন অন্য কেউ কেন এই প্রশ্নে এটি উল্লেখ করেনি, তবে অন্য ব্যবহারকারীর হোম ডিরেক্টরি আপনি কোথায় ব্যবহার করতে পারবেন তা যদি আপনার জানতে প্রয়োজন হয় os.path.expanduser('~username')। সম্ভবত শুধুমাত্র লিনাক্সের জন্য প্রযোজ্য।
সর্বোচ্চ

4
@ দিপায়ন না, এটি প্যাথলিবের পাইথন ২ ব্যাকপোর্ট। পাইথন 3 এর জন্য, প্যাথলিব সঠিক।
হ্যস্ট্যাক

4
ফলাফল একই. আপনি যদি সাধারনত প্যাথলিব নিয়ে কাজ করেন তবে আপনি প্যাথলিব সমাধানটি পছন্দ করতে পারেন (এবং কলটি বাদ দিতে পারেন str)। আপনি যদি কেবল স্ট্রিং হিসাবে পথটি চান তবে তারা উভয়ই একই কাজ করে।
নিক্লাস মার্টশ

-16

এখানে একটি লিনাক্স ওয়ে সিডি দেওয়া আছে .. যদি এর পরিবর্তে আপনাকে সেই নোটটি ব্যবহার করতে হয় তবে: (আপনি যদি কোনও সাব ডিরেক্টরিতে থাকেন তবে এটি ডিরেক্টরিতে নিয়ে যাবে)


4
এটি পূর্ববর্তী ডিরেক্টরিতে পরিবর্তিত হয়। আপনি কি ভুল প্রশ্নটি দেখছেন?
TheTechRobo36414519

4
আমি মনে করি ওপি একটি অজগর স্ক্রিপ্টে কাজ করার জন্য কিছু সন্ধান করছে এবং সেই কমান্ডটি সিডব্লিউডের পিতামাতার দির কাছে যাবে, যা ব্যবহারকারীদের হোম ডায়ার নাও হতে পারে।
বেনিয়ামিন গুডাক্রে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.