আমি input
আমার স্ক্রিপ্টগুলি বিরতি দেওয়ার উপায় হিসাবে ফাংশনটি ব্যবহার করছি
print("something")
wait = input("PRESS ENTER TO CONTINUE.")
print("something")
এটি করার কোনও আনুষ্ঠানিক উপায় আছে?
আমি input
আমার স্ক্রিপ্টগুলি বিরতি দেওয়ার উপায় হিসাবে ফাংশনটি ব্যবহার করছি
print("something")
wait = input("PRESS ENTER TO CONTINUE.")
print("something")
এটি করার কোনও আনুষ্ঠানিক উপায় আছে?
উত্তর:
আমার কাছে সূক্ষ্ম বলে মনে হচ্ছে (বা raw_input()
পাইথন ২.০ এ)। আপনি time.sleep()
যদি সেকেন্ডের নির্দিষ্ট সংখ্যক বিরতি দিতে চান তবে বিকল্পভাবে আপনি ব্যবহার করতে পারেন।
import time
print("something")
time.sleep(5.5) # pause 5.5 seconds
print("something")
print
দীর্ঘ ব্লক প্রদর্শন করতে এবং তারপরে input()
বা raw_input('Press <ENTER> to continue')
পাইথনের সংস্করণে উপযুক্ত হিসাবে কেবল ব্যবহার করুন।
input()
(বা raw_input()
পাইথন ২.x এ) ব্যবহার করা ভাল । দ্রুত পাঠকরা বিলম্বের জন্য অপেক্ষা করতে চান না, ধীর পাঠকরা বিলম্বের জন্য আরও বেশি সময় চাইবে, কেউ পড়তে গিয়ে বাধা পেতে পারে এবং আরও অনেক সময় চাইবে ইত্যাদি Also এছাড়াও, যদি কেউ প্রোগ্রামটি প্রচুর পরিমাণে ব্যবহার করে তবে সে / তিনি কীভাবে এটি কাজ করে সে সম্পর্কে অভ্যস্ত হয়ে উঠতে পারে এবং এমনকি দীর্ঘ পাঠটি পড়ার প্রয়োজন নেই। পাঠকের ব্লকটি পড়ার জন্য কতক্ষণ প্রদর্শিত হয় তা নিয়ন্ত্রণ করতে ব্যবহারকারীকে কেবল বন্ধুবান্ধব করে তোলে।
সুতরাং, আমি আমার কোডিং প্রচেষ্টাগুলিতে এটি খুব ভালভাবে কাজ করতে পেলাম। আমি আমার প্রোগ্রামের একেবারে শুরুতে একটি ফাংশন তৈরি করেছি,
def pause():
programPause = raw_input("Press the <ENTER> key to continue...")
এবং এখন pause()
যখনই আমার প্রয়োজন হবে ঠিক তেমন কোনও ব্যাচ ফাইল লিখছি তখন আমি ফাংশনটি ব্যবহার করতে পারি। উদাহরণস্বরূপ , কোনও প্রোগ্রামে যেমন:
import os
import system
def pause():
programPause = raw_input("Press the <ENTER> key to continue...")
print("Think about what you ate for dinner last night...")
pause()
এখন স্পষ্টতই এই প্রোগ্রামটির কোনও উদ্দেশ্য নেই এবং এটি কেবল উদাহরণস্বরূপ, তবে আপনি কী বলতে চাইছেন তা আপনি ঠিক বুঝতে পারবেন।
দ্রষ্টব্য: পাইথন 3 এর জন্য আপনাকে এর input
বিপরীতে ব্যবহার করতে হবেraw_input
আমারও অনুরূপ প্রশ্ন ছিল এবং আমি সিগন্যালটি ব্যবহার করছিলাম:
import signal
def signal_handler(signal_number, frame):
print "Proceed ..."
signal.signal(signal.SIGINT, signal_handler)
signal.pause()
সুতরাং আপনি সিগন্যাল সিগিন্টের জন্য কোনও হ্যান্ডলার নিবন্ধন করুন এবং কোনও সংকেতের অপেক্ষায় বিরতি দিন। এখন আপনার প্রোগ্রামের বাইরের থেকে (উদাহরণস্বরূপ ব্যাশে), আপনি চালাতে পারেন kill -2 <python_pid>
যা সিগন্যাল 2 (অর্থাত্ সাইন্ট) আপনার অজগর প্রোগ্রামে প্রেরণ করবে। আপনার প্রোগ্রামটি আপনার নিবন্ধিত হ্যান্ডলারকে কল করবে এবং চলমান এগিয়ে যাবে।
signal.pause
।
python
ব্যবহারকারী চাপ না দেওয়া পর্যন্ত আমি কোডটি কার্যকর করতে বিরতি দিতে 2 এবং 3 এর জন্য নিম্নলিখিতটি ব্যবহার করিENTER
import six
if six.PY2:
raw_input("Press the <ENTER> key to continue...")
else:
input("Press the <ENTER> key to continue...")
মাওহেক এবং স্টিহহের মন্তব্য দ্বারা নির্দেশিত হিসাবে , এই সঠিক প্রশ্নের সর্বোত্তম উত্তর হবে:
পাঠ্যের দীর্ঘ ব্লকের জন্য, একটি বিলম্বের পরিবর্তে ব্যবহারকারীকে প্রম্পট করার জন্য
input('Press <ENTER> to continue')
(বাraw_input('Press <ENTER> to continue')
পাইথন ২.x এ) ব্যবহার করা ভাল । দ্রুত পাঠকরা বিলম্বের জন্য অপেক্ষা করতে চান না, ধীর পাঠকরা বিলম্বের জন্য আরও বেশি সময় চাইবে, কেউ পড়তে গিয়ে বাধা পেতে পারে এবং আরও অনেক সময় চাইবে ইত্যাদি Also এছাড়াও, যদি কেউ প্রোগ্রামটি প্রচুর পরিমাণে ব্যবহার করে তবে সে / তিনি কীভাবে এটি কাজ করে সে সম্পর্কে অভ্যস্ত হয়ে উঠতে পারে এবং এমনকি দীর্ঘ পাঠটি পড়ার প্রয়োজন নেই। পাঠকের ব্লকটি পড়ার জন্য কতক্ষণ প্রদর্শিত হয় তা নিয়ন্ত্রণ করতে ব্যবহারকারীকে কেবল বন্ধুবান্ধব করে তোলে।
খুব সহজ:
raw_input("Press Enter to continue ...")
exit()
NameError: name 'raw_input' is not defined
Print ("This is how you pause")
input()
আমার মনে হয় আমি এই দ্রাবকটি পছন্দ করি।
import getpass
getpass.getpass("Press Enter to Continue")
এটি ব্যবহারকারী যেভাবে টাইপ করে তা লুকিয়ে রাখে, যা ইনপুট এখানে ব্যবহৃত হয়নি তা পরিষ্কার করতে সহায়তা করে।
তবে ওএসএক্স প্ল্যাটফর্মে সচেতন হোন এটি একটি কী প্রদর্শন করে যা বিভ্রান্তিকর হতে পারে।
সম্ভবত সেরা সমাধানটি হ'ল read -s
কল না করে নিজেই গেটপাস মডিউলের অনুরূপ কিছু করা । Fg কালারটি বিগের সাথে মেলে?
এই পদ্ধতি দ্বারা, আপনি নির্দিষ্ট করেছেন যে কোনও নির্দিষ্ট কী টিপে আপনার প্রোগ্রামটি আবার শুরু করতে পারেন:
import keyboard
while True:
key = keyboard.read_key()
if key == 'space': # you can put any key you like instead of 'space'
break
একই পদ্ধতি কিন্তু অন্যভাবে:
import keyboard
while True:
if keyboard.is_pressed('space'): # same, you can put any key you like instead of 'space'
break
দ্রষ্টব্য: আপনি নিজের keyboard
মধ্যে শেল বা সেন্টিমিডি করে কেবল মডিউলটি ইনস্টল করতে পারেন :
pip install keyboard
import os, sys
if sys.platform == 'win32':
os.system('pause')
else:
input('Press any key to continue...')