পাইথন প্রোগ্রামটি কার্যকর করার জন্য আমি লিনাক্সে কী ব্যবহার করব


91

আমি সবেমাত্র একটি লিনাক্স সিস্টেম (কুবুন্টু) ইনস্টল করেছি এবং ভাবছিলাম যে লিনাক্সের জন্য পাইথন প্রোগ্রামগুলি কার্যকর করার জন্য কোনও প্রোগ্রাম আছে কিনা।



এর প্রতারিত stackoverflow.com/questions/193077/...
S.Lott

4
না, এটি সেখানে উত্তর দেওয়া হয়নি। বিতরণ সংক্রান্ত সমস্যা সম্পর্কিত প্রশ্নটি।
tzot

না, এটি কোনও দোপ নয়। এই প্রশ্নটি পাইথন সফ্টওয়্যার বিতরণের সাথে সম্পর্কিত যা লাইব্রেরির উপলব্ধতা এবং সামঞ্জস্যের সমস্যাগুলি এড়িয়ে চলে।
tzot

উত্তর:


163

এটি আপনার স্ক্রিপ্টের প্রথম লাইনে রাখুন:

#!/usr/bin/env python

ফাইলটি এক্সিকিউটেবলের সাথে তৈরি করুন

chmod +x myfile.py

দিয়ে মৃত্যুদণ্ড কার্যকর করুন

./myfile.py

8
আমি বিভ্রান্ত "#! / Usr / bin / env পাইথন" কীভাবে কাজ করবে যখন হ্যাশটিকে মন্তব্য করার লাইন হিসাবে গণ্য করার কথা? আমি হ্যাশ লাইন ছাড়াই স্ক্রিপ্টটি চালানোর চেষ্টা করেছি, তবে এটি কার্যকর হয়নি। স্পষ্টতই লাইনটি প্রয়োজনীয়, তবে এটি যদি কোনও মন্তব্য হয় তবে কীভাবে এটি কাজ করবে?
নভে

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

4
@ ম্যাথমানিয়াক যদি আপনি বোঝাচ্ছেন তবে আপনি প্রায় 15% ব্যবহারকারী আপনার অ্যাপ্লিকেশন চালাতে অক্ষম হবে। এটি একটি পঙ্গু সমর্থন বোঝা হবে, একটি দুর্দান্তভাবে প্রতিকূল ব্যবহারকারীর অভিজ্ঞতার কথা উল্লেখ না করা, যা ঘৃণামূলক "অ্যাপ্লিকেশন এক্স সাফল্য" পোস্টের একটি টরেন্ট তৈরি করবে। আমি আমার দৃ by়তার সাথে দাঁড়িয়েছি যে শেষ ব্যবহারকারীদের কাছে অ্যাপ্লিকেশন বিতরণের এটি উপযুক্ত উপায় নয়।
জোনাথন হার্টলি

4
@ প্রহ্লাদইয়েরি ব্যবহার করুন # / usr / bin / env পাইথন 3
রাজা রাজত্ব

4
যে @Nav একটি বলা হচ্ছে কুঁড়েঘর । এটি মন্তব্য করেছে কারণ এটি অজগর দ্বারা ব্যাখ্যা করা উচিত নয়। এটি অপারেটিং সিস্টেমকে তথ্য দেয়। আরও সুনির্দিষ্টভাবে বলা হয়েছে যে স্ক্রিপ্টটি কার্যকর করতে কোন প্রোগ্রাম ব্যবহার করা উচিত।
ম্যানিসি

16

আপনি যদি পাইথনে স্ট্যান্ড-একা বাইনারি অ্যাপ্লিকেশন পেতে চান তবে পাইপেক্স বা পাইআইনস্টলারের মতো সরঞ্জাম ব্যবহার করার চেষ্টা করুন ।


মূলশব্দ: স্বতন্ত্র
ডি অ্যাডামস

আমি পাইআইনস্টলারের আউটপুটটি ডিকম্পাইল করতে পারি?
এসবিবি

14

আপনি পাইআইনস্টলার ব্যবহার করতে পারেন। এটি একটি বিল্ট ডিস্ট তৈরি করে যাতে আপনি এটিকে একক "বাইনারি" ফাইল হিসাবে চালাতে পারেন।

http://pythonhosted.org/PyInstaller/# using-pyinstaller

পাইথন 3-তে বিল্ট ডিস্ট তৈরির নেটিভ বিকল্প রয়েছে:

https://docs.python.org/3/distutils/builtdist.html


প্রশ্নটি পাইথন স্ক্রিপ্টগুলি
এক্স

8
দুঃখিত তবে মনে হচ্ছে প্রশ্নটি কেবল এটিই! "ভাবছিলাম যে লিনাক্সের জন্য অজগর প্রোগ্রামগুলি কার্যকর করার জন্য কোনও প্রোগ্রাম আছে কিনা?"
লিও পেপে

অনেক ধন্যবাদ, @ লিওপ্পে, আমি সবেমাত্র আমার ক্লাসের জন্য উপস্থিতি গ্রহণকারীকে তৈরি করেছি, যা একটি ফাইল থেকে ইনপুট (উপস্থিত শিক্ষার্থীদের নাম) নেয় এবং একটি পাইপ স্ট্রাইকারের সাহায্যে তৈরি একটি রান্নেবল স্ক্রিপ্টে ক্লিক করে একটি আউটপুট ফাইলে উপস্থিতি দেয়।
জিনিয়াস

5

কোডের শুরুতে এই লাইনগুলি স্থাপন করা আপনার অপারেটিং সিস্টেমগুলিকে অজগর স্ক্রিপ্টটি কার্যকর করার জন্য প্রয়োজনীয় বাইনারি প্রোগ্রামটি অনুসন্ধান করতে বলবে অর্থাৎ এটি পাইথন ইন্টারপ্রেটার।

সুতরাং এটি আপনার অপারেটিং সিস্টেমের উপর নির্ভর করে যেখানে এটি অজগর দোভাষী রাখে। আমার যেমন ওবুন্টু অপারেটিং সিস্টেম হিসাবে রয়েছে এটি অজগর দোভাষীকে রাখে /usr/bin/pythonতাই আমার পাইথন স্ক্রিপ্টের শুরুতে আমাকে এই লাইনটি লিখতে হবে;

#!/usr/bin/python

আপনার কোডটি সম্পূর্ণ এবং সংরক্ষণের পরে

  1. আপনার কমান্ড টার্মিনাল শুরু করুন

  2. স্ক্রিপ্টটি আপনার বর্তমান কার্যনির্বাহী ডিরেক্টরিতে রয়েছে তা নিশ্চিত করুন

  3. প্রকার chmod +x script_name.py

  4. এখন আপনি স্ক্রিপ্ট ক্লিক করে স্ক্রিপ্ট শুরু করতে পারেন। একটি সতর্কতা বাক্স উপস্থিত হবে; সতর্কতা বাক্সে "রান" বা "রান ইন টার্মিনাল" টিপুন; অথবা, টার্মিনাল প্রম্পটে টাইপ করুন./script_name.py


4

কেউ যদি এক্সিকিউটেবল করতে চান hello.py

প্রথমে আপনার ওএসে অজগরটি যে পথটি রয়েছে তা সন্ধান করুন: which python

এটি সাধারণত "/ usr / bin / python" ফোল্ডারের অধীনে থাকে।

একেবারে প্রথম লাইনে hello.pyযুক্ত করা উচিত:#!/usr/bin/python

তারপরে লিনাক্স কমান্ডের মাধ্যমে chmod

একটিকে কেবল এটিকে কার্যকর করার মতো করা উচিত: chmod +x hello.py

এবং সাথে চালানো ./hello.py


1

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

  1. রাখুন #! স্ক্রিপ্টের শীর্ষে / usr / bin / env পাইথন 3
  2. chmod u + x file.py
  3. ফাইলের নামে .py .com এ পরিবর্তন করুন

এটি মূলত ফাইলটিকে এক্সিকিউটেবলে পরিণত করে। আপনি যখন এটি ডাবল ক্লিক করেন, এটি চালানো উচিত। এটি ইউনিক্স-ভিত্তিক সিস্টেমে কাজ করে।


0

এটি করার আরেকটি উপায় হ'ল একটি উপকরণ তৈরি করে। উদাহরণস্বরূপ টার্মিনাল লিখুন:

alias printhello='python /home/hello_world.py'

রচনা printhelloহ্যালো_ওয়ার্ল্ড.পি চলবে তবে এটি কেবল অস্থায়ী। উপাধি স্থায়ী করতে, আপনাকে এগুলিকে বাশার্কে যুক্ত করতে হবে, আপনি এটি টার্মিনালে লিখে সম্পাদনা করতে পারেন:

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