Enum আমদানি কিভাবে


1

আমি আমার ম্যাক (OSX 10.9.4) এ পাইথন 3.4.1 ইনস্টল করেছি, এবং আমি enums দিয়ে কাজ করতে হবে। আমি একটি টেক্সট ফাইল একটি স্ক্রিপ্ট লিখতে শুরু:

#!/usr/bin/python
from enum import Enum

এবং টার্মিনাল থেকে:

chmod 0700 myscript.py
./myscript.py

কিন্তু আমি নিম্নলিখিত ত্রুটি পেতে:

from enum import Enum
ImportError: No module named enum

একই সময়ে, যদি আমি আইডিএল ব্যবহার করি তবে কমান্ডের সাথে আমার কোন সমস্যা নেই:

from enum import Enum

আমি কিভাবে স্ক্রিপ্ট ফাইল থেকে enum ব্যবহার করতে পারেন?

সম্পাদনা করুন:

আমি যদি echo $PYTHONPATH কিছুই মুদ্রিত হয়। নিম্নলিখিত আউটপুট হয় print(sys.path):

['/Users/Marco/Desktop/scripts', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']

আমি দেখতে পাচ্ছি যে প্রথম পথ নির্দেশিকার সাথে সম্পর্কিত myscript.py এটি অবস্থিত, মনে হচ্ছে এটি পাইথনের 2.7 সংস্করণটি ব্যবহার করা হয়েছে, এমনকি যদি আমি শেষ সংস্করণটি ইনস্টল করেছি (3.4.1)।


আপনি কি পাইথন লাইব্রেরি / মডিউলগুলির পথটি আপনার অনুসন্ধানের পথে নিশ্চিত করেছেন?
Fegnoid

@ ফগনিয়েড কিভাবে? আমি অন্যান্য স্ক্রিপ্ট চালানোর জন্য কোন সমস্যা নেই, এমনকি অন্যান্য মডিউল আমদানি (গণিত, tkinter, ...)।
Nick

একটি টার্মিনাল টাইপ উপর echo $PYTHONPATH একটি স্ক্রিপ্ট থেকে বলা হয় যখন পাইথন স্টাফ খুঁজছেন যেখানে প্রদর্শিত হবে, এবং তারপর নিষ্ক্রিয় শুরু import sys এবং তারপর print sys.path। আপনার প্রশ্ন যারা যোগ করুন
Fegnoid

@ ফিগনিড আমার সম্পাদনা দেখুন দয়া করে।
Nick

তুমি কি পারবে python -V এবং এটি ব্যবহার করা হয় মনে হয় কি সংস্করণ আমাকে বলুন। এটি হতে পারে যে আপনি ব্যবহারে প্যাথনের ডিফল্ট সংস্করণটি পরিবর্তন করতে হবে। এবং সঙ্গে স্ক্রিপ্ট চালানোর চেষ্টা করুন python3 myscript.py
Fegnoid

উত্তর:


2

আপনার প্রথম লাইন প্রতিস্থাপন করুন:

#!/usr/bin/python

নিম্নলিখিত এক সঙ্গে:

#!/usr/bin/env python3

এই আপনার জন্য কাজ করা উচিত।

সাবেক হার্ড সবসময় চালানো হয় /usr/bin/python, যখন পরবর্তীটি আপনার বর্তমান পরিবেশে কোনও প্যাথন ডিফল্ট হবে চালানো হবে (চেষ্টা করুন echo $PATH )।

নিম্নলিখিত উত্তর এছাড়াও পড়ুন:

এই দুই পাইথন shebangs মধ্যে পার্থক্য কি

পাইথন স্ক্রিপ্টের প্রথম লাইনে মানুষ কেন #! / Usr / bin / env পাইথন লিখেন?

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