পাইথনে মাল্টলাইন মন্তব্য তৈরি করার কোনও উপায় আছে কি?


1156

আমি সম্প্রতি পাইথন অধ্যয়ন শুরু করেছি , তবে মাল্টি-লাইন মন্তব্য কীভাবে প্রয়োগ করা যায় তা খুঁজে পেলাম না। বেশিরভাগ ভাষায় ব্লক কমেন্টের প্রতীক রয়েছে

/*

*/

আমি পাইথনে এটি চেষ্টা করেছি, তবে এটি একটি ত্রুটি ছুঁড়েছে তাই এটি সম্ভবত সঠিক উপায় নয়। পাইথনের আসলে কোনও মাল্টলাইন মন্তব্য বৈশিষ্ট্য রয়েছে?


2
আমি অনুমান করি যে একটি ব্যাখৃত ভাষা হওয়ায় এটি বোধগম্য হয়েছে, যেমন sh বা বাশ বা zsh এর ক্ষেত্রে #মন্তব্য করার একমাত্র উপায়। আমি অনুমান করছি যে পাইথন স্ক্রিপ্টগুলি এভাবে ব্যাখ্যা করা সহজ করে তোলে।
ভিক্টর জামামানিয়ান

1
আমি জানি এই উত্তরটি পুরানো, তবে আমি এটিই পেরেছি কারণ আমার একই প্রশ্ন ছিল। গৃহীত উত্তরটি কাজ করে, যদিও পাইথনের যথেষ্ট পরিমাণে আমি জানি না কেন এটি সঠিক হতে পারে না তার জটিলতাগুলি (অ্যাডটিসির প্রতি)।
ব্র্যান্ডন বার্নি

5
@ ব্র্যান্ডন বার্নি আমাকে এই বিষয়টি আপনাকে ব্যাখ্যা করতে দিন। গৃহীত উত্তর, যা '' 'ব্যবহার করে, আসলে একটি বহু-লাইন স্ট্রিং তৈরি করে যা কিছুই করে না। প্রযুক্তিগতভাবে, এটি কোনও মন্তব্য নয়। উদাহরণস্বরূপ, আপনি কে = '' 'জাল মন্তব্য, আসল স্ট্রিং' '' লিখতে পারেন। তারপরে, এডিটিসিটির অর্থ কী তা দেখতে মুদ্রণ (কে) করুন।
পিনোটে

3
এটি এখন আরও বোধগম্য করে তোলে। আমি ভিবিএতে অভ্যস্ত যেখানে একটি ত্রুটিতে অব্যবহৃত স্ট্রিংয়ের ফলাফল তৈরি করে। পাইথন বুঝতে পারিনি শুধু এটিকে উপেক্ষা করে। এটি এখনও কমপক্ষে ডিবাগিং এবং শেখার জন্য কাজ করে, তবে প্রকৃত বিকাশের জন্য এটি ভাল অনুশীলন নয়।
ব্র্যান্ডন বার্নে

পাইথনের সোর্স কোডে, আপনি যদি একটি দীর্ঘ রেখাটি ভাঙ্গেন, সম্পাদকটি স্বয়ংক্রিয়ভাবে এটিকে সূচিত করে, এটি বোঝাতে যে ভাঙা লাইনটি সত্যই পূর্ববর্তী লাইনের অংশ? যদি আমি সিউডোকোডের লম্বা লাইনটি ভাঙ্গি তবে আমার কী করা উচিত?
alpha_989

উত্তর:


1802

আপনি ট্রিপল-উদ্ধৃত স্ট্রিং ব্যবহার করতে পারেন। যখন তারা কোনও ডাস্ট্রিং নয় (ক্লাস / ফাংশন / মডিউলের প্রথম জিনিস), তখন তারা এড়ানো হবে।

'''
This is a multiline
comment.
'''

( '''একটি এড়ানোর জন্য যথাযথভাবে নেতৃত্বের ইনডেন্ট করা নিশ্চিত করুন IndentationError))

গাইডো ভ্যান রসুম (পাইথনের স্রষ্টা) এটি একটি "প্রো টিপ" হিসাবে টুইট করেছেন

যাইহোক, পাইথনের স্টাইল গাইড, পিইপি 8, একটানা একক-লাইন মন্তব্য ব্যবহার করার পক্ষে এবং এটিও অনেক প্রকল্পে আপনি খুঁজে পাবেন। এটি সহজেই করার জন্য পাঠ্য সম্পাদকদের শর্টকাট থাকে।


17
হুঁ। আমি test.pyদেখতে পাই পাইথন স্ক্রিপ্টে একটি বিশাল মাল্টলাইন স্ট্রিং রেখেছি । আমি যখন করি তখন import testএকটি test.pycফাইল উত্পন্ন হয়। দুর্ভাগ্যক্রমে, pycফাইলটি বিশাল and আমি কি কিছু ভুল বুঝছি, নাকি এই টুইটটি ভুল?
unutbu

23
@ ইউনতবু, যদি ফাইলটিতে এটিই ছিল তবে এটি একটি ডক্ট্রিং ছিল। এর আগে কিছু কোড রাখুন এবং এটি এটি থেকে অদৃশ্য হয়ে যাবে pyc। আমি উত্তরটি সম্পাদনা করেছি এবং ডকাস্ট্রিংস সম্পর্কিত জিনিসগুলির তালিকায় "মডিউল" রেখেছি।
পেটর ভিক্টরিন

31
আমি মন্তব্য হিসাবে মাল্টলাইন স্ট্রিং পছন্দ করি না। সিনট্যাক্স হাইলাইটিং তাদের মন্তব্য হিসাবে নয়, স্ট্রিং হিসাবে চিহ্নিত করে। আমি একটি শালীন সম্পাদক ব্যবহার করতে চাই যা স্বয়ংক্রিয়ভাবে অঞ্চলগুলি মন্তব্য করার সময় এবং টাইপ করার সময় মাল্টলাইন মন্তব্য মোড়ানোর বিষয়ে ডিল করে। অবশ্যই এটি স্বাদের বিষয়।
সোভেন মারনাচ

61
একটি সম্মেলন হিসাবে আমি """ডকাস্ট্রিং এবং '''ব্লক মন্তব্যের জন্য ব্যবহার করা সহায়ক বলে মনে করি । এই পদ্ধতিতে আপনি '''দ্বন্দ্ব ছাড়াই আপনার সাধারণ ডকাস্ট্রিংগুলির চারপাশে মোড়ানো করতে পারেন ।
রোশাম্বো

19
আপনি মাল্টি-লাইন স্ট্রিংগুলি মাল্টি-লাইন মন্তব্য হিসাবে ব্যবহার করতে পারছেন , আমি অবাক হয়েছি যে এই উত্তরগুলির কোনওটিই পিইপি 8 অনুচ্ছেদে উল্লেখ করে না যা #অনুচ্ছেদে পৃথক করার জন্য ফাঁকা রেখাসমূহের সাথে পরপর একক-লাইন মন্তব্য থেকে বহু-লাইন মন্তব্যগুলি তৈরির প্রস্তাব দেয় ।
এয়ার

82

পাইথনের একাধিক স্ট্রিং / মন্তব্য বাক্য গঠন রয়েছে যে ডকাস্ট্রিং হিসাবে ব্যবহৃত না হলে মাল্টলাইন স্ট্রিং কোনও বাইটোকড জেনারেট করে না - ঠিক #পূর্ব-পূর্বের মতামত মতামত। বাস্তবে, এটি ঠিক একটি মন্তব্যের মতো কাজ করে।

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

যাইহোক, আপনার পাঠ্য সম্পাদক সহজেই একটি নির্বাচিত অঞ্চলে সহজেই মন্তব্য-আউট করতে সক্ষম হওয়া উচিত ( #পৃথকভাবে প্রতিটি লাইনের সামনে একটি স্থাপন করে )। যদি তা না হয় তবে এমন কোনও পাঠ্য সম্পাদককে স্যুইচ করুন।

নির্দিষ্ট পাঠ্য সম্পাদনা বৈশিষ্ট্য ছাড়াই পাইথনে প্রোগ্রামিং করা বেদনাদায়ক অভিজ্ঞতা হতে পারে। সঠিক সম্পাদক খুঁজে পাওয়া (এবং কীভাবে এটি ব্যবহার করতে হবে তা জানা) কীভাবে পাইথন প্রোগ্রামিংয়ের অভিজ্ঞতা অনুধাবন করা যায় তাতে একটি বড় পার্থক্য করতে পারে।

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


লিঙ্ক ক্ষয় থেকে রক্ষা করতে, এখানে গাইডো ভ্যান রসমের টুইটের লিখিত সামগ্রী রয়েছে :

@ বিএসএসসিএস ক্লাব পাইথন টিপ: আপনি বহু-লাইন মন্তব্য হিসাবে বহু-লাইন স্ট্রিং ব্যবহার করতে পারেন। ডকাস্ট্রিং হিসাবে ব্যবহৃত না হলে এগুলি কোনও কোড জেনারেট করে না! :-)


3
ট্রিপল কোটেড স্ট্রিং ('' ') প্রকৃতপক্ষে মাল্টি লাইন মন্তব্যগুলি পূরণ করতে কাজ করে।
বরুণ ভাটিয়া

ধন্যবাদ .. ব্লকটি মন্তব্য করার জন্য ব্যবহৃত ('' ') এবং ("" ") কিন্তু এটি জ্যাঙ্গো অ্যাপ্লিকেশনগুলিতে আমার সহায়তা করেনি। সুতরাং আইডিএল বেছে নিয়েছে এবং মন্তব্য আউট অঞ্চল এবং আনকমেন্ট অঞ্চলগুলির মতো বিকল্প রয়েছে (শর্টকাট: Alt + ফর্ম্যাট মেনুতে যথাক্রমে 3 এবং Alt + 4) এখন আগের চেয়ে আরও সহজ ..
সৌরভ কুমার

আপনার আইডিই ব্যবহার করাও বিবেচনা করা উচিত। হ্যাঁ, এগুলি মোটা, তবে সঠিকভাবে ব্যবহৃত হলে এগুলি কোডিংয়ের সময়কে বাড়িয়ে তুলতে পারে। আমি ব্যক্তিগতভাবে পাইডেভ ব্যবহার করতাম এবং এখন পিটিভিএস ব্যবহার করি (ভিজ্যুয়াল স্টুডিও সহ)। আমি পিটিভিএস অবশ্যই স্পষ্টভাবে গ্রহণ করব, কারণ উপরের বৈশিষ্ট্যগুলি সহ আরও অনেক কিছু রয়েছে - এটি কাজ করা সত্যিই খুব ভাল
ভ্যুচুয়ালেভগুলির

2
@ হ্যাপিলিপসেকেন্ড আমি মনে করি আপনার কাছে এটি স্পষ্ট করে বলা উচিত "পাইথনের একটি সত্যিকার মাল্টিলাইন মন্তব্য বাক্য গঠন নেই, তবে মাল্টলাইন স্ট্রিংগুলি সমর্থন করে যা মন্তব্য হিসাবে ব্যবহার করা যেতে পারে।"
এডিটিসি

3
আমি যা চাই তা টেস্ট করার সময় কোডের সম্পূর্ণ ব্লকগুলি মন্তব্য করার সহজ উপায়। অন্যান্য ভাষাগুলি এটিকে সহজ করে তোলে। পাইথন কেবল একটি ব্যথা।
অ্যালবার্ট গডফ্রাইন্ড

45

গৃহীত উত্তর থেকে ...

আপনি ট্রিপল-উদ্ধৃত স্ট্রিং ব্যবহার করতে পারেন। যখন তারা কোনও ডাস্ট্রিং নয় (ক্লাস / ফাংশন / মডিউলের প্রথম জিনিস), তারা এড়ানো হবে।

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

আপনি যদি এই কোডটি চালানোর চেষ্টা করেন ...

def parse_token(token):
    """
    This function parses a token.
    TODO: write a decent docstring :-)
    """

    if token == '\\and':
        do_something()

    elif token == '\\or':
        do_something_else()

    elif token == '\\xor':
        '''
        Note that we still need to provide support for the deprecated
        token \xor. Hopefully we can drop support in libfoo 2.0.
        '''
        do_a_different_thing()

    else:
        raise ValueError

আপনি পাবেন ...

ValueError: invalid \x escape

... পাইথন ২.x বা ...

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 79-80: truncated \xXX escape

... পাইথন 3.x এ

পার্সার দ্বারা উপেক্ষা করা মাল্টি-লাইন মন্তব্যগুলি করার একমাত্র উপায় হ'ল ...

elif token == '\\xor':
    # Note that we still need to provide support for the deprecated
    # token \xor. Hopefully we can drop support in libfoo 2.0.
    do_a_different_thing()

তারপরে, আপনি ব্যবহার করতে পারেন r'raw string'- r'\xor' == '\\xor'
জিঞ্জারপ্লাসপ্লাস

1
ঠিক আছে, যে কোনও "সত্য" মাল্টি-লাইনের মন্তব্যটি অবশ্যই বিশ্লেষণযোগ্য এবং সিন্ট্যাক্টিক্যালি বৈধ হওয়া উচিত। সি-স্টাইলের মন্তব্যে কোনওটি থাকতে পারে না */কারণ এটি ব্লকটি শেষ করে দেবে, উদাহরণস্বরূপ।

1
@ ড্যান 1111 এটি স্পষ্টত যে মন্তব্যটি শেষের চিহ্নিতকারীকে অন্তর্ভুক্ত করতে পারে না, তবে এটিই কেবল সীমাবদ্ধতা।
el.pescado

14
'''"মন্তব্যগুলি" এর আরও সীমাবদ্ধতা রয়েছে। আপনি কেবল পুরো বিবৃতিতে মন্তব্য করতে পারেন, যেখানে মন্তব্যগুলি মত প্রকাশের কিছু অংশে মন্তব্য করতে পারে। উদাহরণ: ইন সি, আপনি কিছু তালিকা উপাদান মন্তব্য করতে পারেন: int a[] = {1, 2, /* 3, 4, */ 5};। মাল্টি লাইন স্ট্রিংয়ের সাহায্যে আপনি এটি করতে পারবেন না কারণ এটি আপনার তালিকার ভিতরে একটি স্ট্রিং রাখবে।
el.pescado

35

পাইথন ২.7 এ মাল্টলাইন মন্তব্যটি হল:

"""
This is a
multilline comment
"""

আপনি যদি কোনও শ্রেণীর ভিতরে থাকেন তবে আপনার এটি সঠিকভাবে ট্যাব করা উচিত।

উদাহরণ স্বরূপ:

class weather2():
   """
   def getStatus_code(self, url):
       world.url = url
       result = requests.get(url)
       return result.status_code
   """

20
ট্রিপল-কোটগুলি এমন পাঠ্য সন্নিবেশ করার একটি উপায় যা কিছু না করে (আমি বিশ্বাস করি আপনি এটি নিয়মিত একক-উদ্ধৃত স্ট্রিংগুলির সাহায্যেও করতে পারেন), তবে তারা কোনও মন্তব্য নয় - দোভাষা প্রকৃতপক্ষে লাইনটি কার্যকর করে (তবে লাইনটি কিছুই করে না কিছু করবেন না)। এজন্য একটি ট্রিপল-কোটেড 'মন্তব্য' এর ইন্ডেন্টেশন গুরুত্বপূর্ণ।
ডেমিস

12
এই সমাধানটি ভুল, weather2মন্তব্যটি ক্লাসে প্রথম জিনিস হওয়ায় এটি আসলে একটি ডক্ট্রিং।
কেন উইলিয়ামস 19

@ কেন উইলিয়ামস এর সাথে সম্মত হন। এটি সঠিক সমাধান নয়। এটিকে কোনও ফাংশন / শ্রেণির মাঝখানে রাখার চেষ্টা করুন এবং দেখুন এটি কীভাবে আপনার ফর্ম্যাটিং এবং স্বয়ংক্রিয় কোড কোড ভাঁজ / লেটিংকে বিশৃঙ্খলা করে।
alpha_989

25

আফাইক, পাইথনের ব্লক মন্তব্য নেই। স্বতন্ত্র লাইনে মন্তব্য করার জন্য, আপনি #অক্ষরটি ব্যবহার করতে পারেন ।

আপনি ব্যবহার করে থাকেন নোটপ্যাড ++, , সেখানে ব্লক মন্তব্য করার জন্য একটি শর্টকাট । আমি নিশ্চিত gVim এবং Emacs এর মতো অন্যদেরও একই বৈশিষ্ট্য রয়েছে।


2
এটি ভুল, ট্রিপল কোট ব্যবহারের প্রতিক্রিয়াগুলি দেখুন।
ফার্নান্দো গঞ্জালেজ সানচেজ

10
@ ফারানান্দোগোঞ্জালেজ সানচেজ: এটি আসলে ভুল নয়। এই "মন্তব্য হিসাবে বহু-লাইন স্ট্রিং" সর্বোত্তম একটি "প্রো-টিপ" হিসাবে বর্ণনা করা যেতে পারে। অফিসিয়াল পাইথন ডকস এ বিষয়ে কিছুই বলেন না, সুতরাং প্রশ্নটি ওপি পোস্ট করেছে।
সঞ্জয় টি শর্মা

8
এটি ডকাস্ট্রিংয়ের জন্য একটি পিইপি; এই পৃষ্ঠায় "মন্তব্য" এর একটিও উল্লেখ নেই।
সঞ্জয় টি শর্মা

12

আমি মনে করি এটি একচেটিয়া মাল্টিলাইন স্ট্রিং প্রক্রিয়াজাত না করা বাদে। তবে, বেশিরভাগ ক্ষেত্রে, পাইথন আইডিই-র একাধিক লাইনের কোড 'মন্তব্য করার' জন্য শর্টকি নেই।


11

আপনি যদি একটি মন্তব্য রাখেন

"""
long comment here
"""

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

# Long comment
# here.

আপনি যদি ভিম ব্যবহার করেন তবে আপনি কমেন্টারি.ভিমের মতো প্লাগইন করতে পারেন , চাপ দিয়ে স্বয়ংক্রিয়ভাবে মন্তব্যগুলির দীর্ঘ লাইনে মন্তব্য করতে পারেন Vjgcc। যেখানে Vjকোড দুটি লাইন নির্বাচন করে এবং gccতাদের মন্তব্য করে।

আপনি যদি উপরের মতো প্লাগইন ব্যবহার করতে না চান তবে আপনি অনুসন্ধান এবং পছন্দ মতো প্রতিস্থাপন করতে পারেন

:.,.+1s/^/# /g

এটি বর্তমান এবং পরবর্তী লাইনের সাথে প্রথম অক্ষরটি প্রতিস্থাপন করবে #


8

মাল্টি-লাইন মন্তব্য হিসাবে এমন কোনও বৈশিষ্ট্য নেই। #কোডের একক লাইনটিতে মন্তব্য করার একমাত্র উপায়। আপনারা অনেকে তাদের সমাধান হিসাবে '' 'একটি মন্তব্য' '' এর উত্তর দিয়েছেন।

এটি কাজ করছে বলে মনে হচ্ছে, তবে '''পাইথনের অভ্যন্তরীণভাবে নিয়মিত স্ট্রিং হিসাবে আবদ্ধ লাইনগুলি গ্রহণ করে যা অনুবাদক মন্তব্য করার মতো মন্তব্য উপেক্ষা করে না #

অফিসিয়াল ডকুমেন্টেশন এখানে দেখুন


5

দুর্ভাগ্যক্রমে স্ট্রিংফিকেশন সর্বদা মন্তব্য হিসাবে ব্যবহার করা যায় না! সুতরাং এটি প্রতিটি লাইনে স্ট্যান্ডার্ড প্রেন্ডিংয়ের সাথে লেগে থাকা নিরাপদ #

এখানে একটি উদাহরণ:

test1 = [1, 2, 3, 4,]       # test1 contains 4 integers

test2 = [1, 2, '''3, 4,'''] # test2 contains 2 integers **and the string** '3, 4,'

4

ঠিক আছে, আপনি এটি চেষ্টা করে দেখতে পারেন (উদ্ধৃত দৌড়ানোর সময়, প্রথম প্রশ্নের ইনপুটটি দিয়ে উদ্ধৃত করা উচিত '):

"""
print("What's your name? ")
myName = input()
print("It's nice to meet you " + myName)
print("Number of characters is ")
print(len(myName))
age = input("What's your age? ")
print("You will be " + str(int(age)+1) + " next year.")

"""
a = input()
print(a)
print(a*5)

এর মধ্যে যা কিছু আবদ্ধ রয়েছে """তা মন্তব্য করা হবে।

আপনি যদি একক-লাইন মন্তব্য খুঁজছেন তবে তা #


3

পাইথনে একাধিক মন্তব্য:

আমার জন্য, '' 'এবং "" "দুজনেই কাজ করেছে।

উদাহরণ:

a = 10
b = 20
c = a+b
'''
print ('hello')
'''
print ('Addition is: ', a+b)

উদাহরণ:

a = 10
b = 20
c = a+b
"""
print('hello')
"""
print('Addition is: ', a+b)

3

পাইথনে ইনলাইন মন্তব্যগুলি হ্যাশ অক্ষর দিয়ে শুরু হয়।

hello = "Hello!" # This is an inline comment
print(hello)

হ্যালো!

লক্ষ করুন যে স্ট্রিং আক্ষরিক মধ্যে একটি হ্যাশ অক্ষর কেবল একটি হ্যাশ অক্ষর।

dial = "Dial #100 to make an emergency call."
print(dial)

জরুরি কল করতে # 100 ডায়াল করুন।

একক বা একাধিক লাইন মন্তব্যের জন্য একটি হ্যাশ অক্ষরও ব্যবহার করা যেতে পারে।

hello = "Hello"
world = "World"
# First print hello
# And print world
print(hello)
print(world)

হ্যালো

বিশ্ব

ডকস্ট্রিং সমর্থন করার জন্য ট্রিপল ডাবল উদ্ধৃতি সহ পাঠ্যটি সংযুক্ত করুন।

def say_hello(name):
    """
    This is docstring comment and
    it's support multi line.
    :param name it's your name
    :type name str
    """
    return "Hello " + name + '!'


print(say_hello("John"))

হ্যালো জন!

ব্লক মন্তব্যের জন্য ট্রিপল একক উদ্ধৃতি সহ পাঠ্যটি সংযুক্ত করুন।

'''
I don't care the parameters and
docstrings here.
'''

2

পাইথন ২.7.১৩ এ:

একক:

"A sample single line comment "

একাধিক লাইন:

"""
A sample
multiline comment
on PyCharm
"""

2
আপনি বলছেন একক উদ্ধৃতি অজগর ২.7 এ একটি মন্তব্য তৈরি করবেন?
এমকেলেেক্স

3
একটি একক উদ্ধৃতি ব্যবহার করে একটি স্ট্রিং তৈরি হয়। একটি একক লাইন মন্তব্য একটি # দিয়ে উপসর্গ করা উচিত।
johanno


2

হ্যাঁ, উভয় ব্যবহার করা ভাল:

'''
Comments
'''

এবং

"""
Comments
"""

তবে, একটি আইডিইতে চলাকালীন আপনার সকলের মনে রাখা দরকার, একাধিক লাইন কোড হিসাবে আপনাকে পুরো ফাইলটি 'রান' করতে হবে? লাইন বাই লাইন 'রুন' সঠিকভাবে কাজ করবে না এবং একটি ত্রুটি দেখাবে।


1

পাইথনে কোডের একাধিক লাইন মন্তব্য করার জন্য কেবল #প্রতিটি লাইনে একক-লাইন মন্তব্য ব্যবহার করা হয়:

# This is comment 1
# This is comment 2 
# This is comment 3

পাইথনে "যথাযথ" মাল্টি-লাইন মন্তব্য লেখার জন্য """সিনথ্যাক্সের সাথে পাইথনের ডকুমেন্টেশন স্ট্রিং (বা ডকাস্ট্রিংস) বৈশিষ্ট্যযুক্ত মাল্টি-লাইন স্ট্রিংগুলি ব্যবহার করা । এটি প্রোগ্রামারগুলিকে প্রতিটি পাইথন মডিউল, ফাংশন, শ্রেণি এবং পদ্ধতি সহ দ্রুত নোট যুক্ত করার সহজ উপায় দেয়।

'''
This is
multiline
comment
'''

এছাড়াও, উল্লেখ করুন যে আপনি কোনও শ্রেণি অবজেক্টের দ্বারা ডক্ট্রিং এ অ্যাক্সেস করতে পারেন

myobj.__doc__

এটি পূর্ববর্তী উত্তরের চেয়ে কী যুক্ত করে?
পিটার মর্টেনসেন

আমার উত্তরে আরও বিশদ রয়েছে, যা বিকাশকারীদের আরও সহায়তা করতে পারে।
shafik

1

আপনি নিম্নলিখিত ব্যবহার করতে পারেন। একে ডকস্ট্রিং বলে।

def my_function(arg1):
    """
    Summary line.
    Extended description of function.
    Parameters:
    arg1 (int): Description of arg1
    Returns:
    int: Description of return value
    """
    return arg1

print my_function.__doc__

"ডকস্ট্রিং" ? আপনার কি রেফারেন্স আছে?
পিটার মর্টেনসেন

@ পিটারমোরটেনসেন এখানে আপনি ডেটাচ্যাম্প
কম্যুনিটি /

1

আমি """মাল্টি লাইন মন্তব্য ব্যবহার করার বিরুদ্ধে পরামর্শ দিতে হবে !

অপ্রত্যাশিত আচরণ হিসাবে বিবেচিত হতে পারে এমনটি হাইলাইট করার জন্য এখানে একটি সাধারণ উদাহরণ:

print('{}\n{}'.format(
    'I am a string',
    """
    Some people consider me a
    multi-line comment, but
    """
    'clearly I am also a string'
    )
)

এখন আউটপুটটি দেখুন:

I am a string

    Some people consider me a
    multi-line comment, but
    clearly I am also a string

মাল্টি লাইনের স্ট্রিংটিকে মন্তব্য হিসাবে বিবেচনা করা হয়নি, তবে এটি 'clearly I'm also a string'একটি একক স্ট্রিং গঠনের সাথে সংমিশ্রিত হয়েছিল ।

আপনি যদি মন্তব্য করতে চান তবে PEP 8 নির্দেশিকা অনুযায়ী একাধিক লাইন এটি করুন :

print('{}\n{}'.format(
    'I am a string',
    # Some people consider me a
    # multi-line comment, but
    'clearly I am also a string'
    )
)

আউটপুট:

I am a string
clearly I am also a string

তা না করা উচিত হবে " lang-bash" এর পরিবর্তে " bash" সিনট্যাক্স হাইলাইটিং জন্য? যাইহোক, এটি সাধারণত অদ্ভুত দেখাচ্ছে (যেমন "কিছু" এখানে) - এমনকি এটি পরামিতি সহ কমান্ড-লাইন কমান্ড হলেও commands lang-none(সিনট্যাক্স হাইলাইটিং অফ করা) আরও ভাল পছন্দ হতে পারে।
পিটার মর্টেনসেন

@ পিটারমোরটেনস আমাদেরকে অদ্ভুতভাবে তুলে ধরার জন্য ধন্যবাদ জানাতে! "ল্যাং-নন" নিয়ে গেছে।
জোজো

0

পাইচার্ম আইডিই ব্যবহার করে।

আপনি commentএবং Ctrl + /uncomment ব্যবহার করে কোডের লাইন করতে পারেন । Ctrl + / মন্তব্য বা একক লাইন মন্তব্য সহ বর্তমান লাইন বা কয়েকটি নির্বাচিত লাইন uncomments ({# in Django templates, or # in Python scripts)Pressing Ctrl+Shift+/জ্যাঙ্গো টেমপ্লেটে উত্স কোডের একটি নির্বাচিত ব্লকের জন্য {% comment %} and {% endcomment %}ট্যাগগুলি সহ ব্লকটিকে ঘিরে ।


n = 5
while n > 0:
    n -= 1
    if n == 2:
        break
    print(n)

print("Loop ended.")

সমস্ত লাইন নির্বাচন করুন তারপরে টিপুন Ctrl + /


# n = 5
# while n > 0:
#     n -= 1
#     if n == 2:
#         break
#     print(n)

# print("Loop ended.")

0

পাইথনটিতে একটি বহুমুখী মন্তব্য আসলে বিদ্যমান নেই। নীচের উদাহরণটিতে একটি অ-স্বাক্ষরিত স্ট্রিং রয়েছে যা সিন্থেটিকাল ত্রুটির জন্য পাইথন দ্বারা বৈধ হয়ে গেছে।

নোটপ্যাড ++ এর মতো কয়েকটি পাঠ্য সম্পাদক আমাদের কোড বা শব্দের একটি লিখিত টুকরো মন্তব্য করার শর্টকাট সরবরাহ করে।

def foo():
    "This is a doc string."
    # A single line comment
    """
       This
       is a multiline
       comment/String
    """
    """
    print "This is a sample foo function"
    print "This function has no arguments"
    """
    return True

এছাড়াও, Ctrl+ + K++, ব্লক মন্তব্যের নোটপ্যাড একটি শর্টকাট। এটি #নির্বাচনের অধীনে প্রতিটি লাইনের সামনে একটি যোগ করে। Ctrl+ + Shift+ + Kব্লক uncomment জন্য।


0

অন্যান্য উত্তরের মধ্যে, আমি খুঁজে পেতে সবচেয়ে সহজ উপায়টি হল আইডিই মন্তব্য ফাংশনগুলি ব্যবহার করা যা পাইথন মন্তব্য সমর্থন ব্যবহার করে #

আমি অ্যানাকোন্ডা স্পাইডার ব্যবহার করছি এবং এটিতে রয়েছে:

  • Ctrl+ 1- মন্তব্য / অসম্পূর্ণ
  • Ctrl+ 4- কোডের একটি ব্লক মন্তব্য করুন
  • Ctrl+ 5- কোড একটি ব্লক মন্তব্য

এটি একটি একক / বহু লাইন / কোড সহ কোড / মন্তব্য করবে #

আমি এটি সবচেয়ে সহজ খুঁজে।

উদাহরণস্বরূপ, একটি ব্লক মন্তব্য:

# =============================================================================
#     Sample Commented code in spyder
#  Hello, World!
# =============================================================================

সম্পাদনা করার জন্য @ পিটারমোরটেনসেনকে ধন্যবাদ :)
এনিলেটিলেট

-2

আপনি যে লাইনগুলিতে মন্তব্য করতে চান তা নির্বাচন করুন এবং তারপরে সাব্লাইম টেক্সট এডিটরে পাইথন কোডটি মন্তব্য বা অসন্তুষ্ট করতে Ctrl+ ব্যবহার ?করুন ।

একক লাইনের জন্য আপনি Shift+ ব্যবহার করতে পারেন #

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