পাইথনে একাধিক লাইনে পাঠ্যের দীর্ঘ স্ট্রিং লেখা

ব্যবসায়

আপনি যদি পাইথনে ফ্লেক8-এর মতো একটি PEP8 কমপ্লায়েন্ট কোড পরীক্ষক ব্যবহার করেন, একটি লাইন 80 অক্ষরের বেশি হলে আপনি নিম্নলিখিত ত্রুটিটি পাবেন।
E501 line too long

আমি আপনাকে দেখাব কিভাবে 80টির বেশি অক্ষরের একটি দীর্ঘ স্ট্রিং, যেমন একটি URL, কোডের একাধিক লাইনে ভাঙতে হয়।

  • ব্যাকস্ল্যাশ সহ লাইন ব্রেক উপেক্ষা করুন (\)
  • লাইন বিরতি অবাধে বন্ধনীতে আবদ্ধ করা যেতে পারে

এছাড়াও, টেক্সট র্যাপ মডিউলটি দরকারী যদি আপনি আউটপুট করতে চান এবং লম্বা স্ট্রিংগুলিকে মোড়ানো বা সংক্ষিপ্ত করে প্রদর্শন করতে চান।

যদি একটি লাইনের অক্ষরের সংখ্যা একটি দীর্ঘ স্ট্রিংয়ের চেয়ে একটি পদ্ধতি শৃঙ্খলে দীর্ঘ হয়, তবে লাইনটি কোডেও ভেঙে যেতে পারে।

ব্যাকস্ল্যাশ সহ লাইন ব্রেক উপেক্ষা করুন (\)

পাইথনে, ব্যাকস্ল্যাশ (\) একটি ধারাবাহিক অক্ষর, এবং যখন একটি লাইনের শেষে স্থাপন করা হয়, এটি পরবর্তী লাইন বিরতি উপেক্ষা করে এবং ধরে নেয় যে লাইনটি অব্যাহত রয়েছে।

n = 1 + 2 \
    + 3

print(n)
# 6

এছাড়াও, যখন একাধিক স্ট্রিং লিটারেল পরপর লেখা হয়, তখন সেগুলিকে একক স্ট্রিং গঠনের জন্য একত্রিত করা হয় যা নীচে দেখানো হয়েছে।

s = 'aaa' 'bbb'

print(s)
# aaabbb

দুটিকে একত্রিত করে, একটি দীর্ঘ স্ট্রিং কোডের একাধিক লাইনে লেখা যেতে পারে, যেমনটি নীচে দেখানো হয়েছে।

s = 'https://wikipedia.org/wiki/'\
    '%E3%83%97%E3%83%AD%E3%82%B0%E3%83'\
    '%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E'

print(s)
# https://wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

মনে রাখবেন যে শুধুমাত্র স্ট্রিং লিটারেল (‘ বা “” তে আবদ্ধ) সংযুক্ত করা যেতে পারে, এবং স্ট্রিং ধারণকারী ভেরিয়েবল একটি ত্রুটির কারণ হবে।

s_var = 'xxx'

# s = 'aaa' s_var 'bbb'
# SyntaxError: invalid syntax

ভেরিয়েবলকে একে অপরের সাথে বা ভেরিয়েবলকে স্ট্রিং লিটারেলের সাথে সংযুক্ত করতে + অপারেটর ব্যবহার করুন।

s = 'aaa' + s_var + 'bbb'

print(s)
# aaaxxxbbb

এমনকি যখন একটি ব্যাকস্ল্যাশ (\) দ্বারা পৃথক করা হয়, তখন ভেরিয়েবলগুলিকে সংযুক্ত করতে + অপারেটরের প্রয়োজন হয়।

s = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'\
    + s_var\
    + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'

print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

লাইন বিরতি অবাধে বন্ধনীতে আবদ্ধ করা যেতে পারে

পাইথনে, আপনি অবাধে নিম্নলিখিত বন্ধনীগুলির মধ্যে লাইনগুলি ভাঙতে পারেন। আপনি বন্ধনীতে লেখার দীর্ঘ স্ট্রিংগুলিকে আবদ্ধ করতে এই নিয়মটি ব্যবহার করতে পারেন।

  • ()
  • {}
  • []

উল্লেখ্য যে নিম্নলিখিত বন্ধনীর একটি অর্থ আছে।

  • {} = set
  • [] = list

এই কারণে, একাধিক লাইনে দীর্ঘ স্ট্রিং লেখার সময় বৃত্তাকার বন্ধনী () ব্যবহার করুন।

আবার, একটি একক স্ট্রিং তৈরি করতে একাধিক স্ট্রিংকে একত্রিত করা যেতে পারে এই সত্যটি ব্যবহার করে, আমরা নিম্নলিখিতটি লিখতে পারি

s = ('https://wikipedia.org/wiki/'
     '%E3%83%97%E3%83%AD%E3%82%B0%E3%83'
     '%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E')

print(s)
# https://wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

ব্যাকস্ল্যাশের উদাহরণের মতো, যখন ভেরিয়েবল অন্তর্ভুক্ত করা হয় তখন + অপারেটরের প্রয়োজন হয়।

s = ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
     + s_var
     + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb')

print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
Copied title and URL