প্রোগ্রামিং

আল্টিমেট পাইথন বিগিনারস গাইড

30 অক্টোবর, 2021

সুচিপত্র

  • পরিবেশ সেটআপ
    • স্থানীয় পরিবেশ সেটআপ
    • কিভাবে পাইথন পেতে হয়
    • কিভাবে পাইথন ইন্সটল করবেন
    • উইন্ডোজ ইনস্টলেশন
    • ইউনিক্স/লিনাক্স ইনস্টলেশন
    • MAC ইনস্টলেশন
    • পাইথনের জন্য পাথ সেট আপ করা হচ্ছে
    • ইউনিক্স/লিনাক্সের জন্য পথ সেট করা হচ্ছে
    • উইন্ডোজের জন্য পথ সেট করা
  • পাইথন এনভায়রনমেন্ট ভেরিয়েবল
    • পাইথন চলছে
  • মৌলিক সিনট্যাক্স
    • পাইথন শনাক্তকারী
    • পাইথন স্টেটমেন্ট
    • পাইথনে ইন্ডেন্ট
    • পাইথনে মন্তব্য
    • ইনপুট হচ্ছে
    • আউটপুট প্রদর্শন করুন
  • পরিবর্তনশীল প্রকার
    • ভেরিয়েবলে মান বরাদ্দ করা
    • পাইথন ডেটা প্রকার
    • স্ট্রিংস
    • টিপলস
    • তালিকা
    • সংখ্যা
  • বেসিক অপারেটর
    • নিয়োগ অপারেটর
    • বিটওয়াইজ অপারেটর
    • লজিক্যাল অপারেটর
    • পাটিগণিত অপারেটর
    • তুলনা অপারেটর
    • পরিচয় অপারেটর
    • সদস্যপদ অপারেটর
  • সিদ্ধান্ত গ্রহণ
    • যদি বিবৃতি
    • অন্যথায় যদি
    • নেস্টেড যদি
    • ইফ-এলিফ-অন্য-মই
    • সংক্ষেপে যদি বিবৃতি
    • সংক্ষেপে যদি-অন্যথা বিবৃতি
  • লুপস
    • যখন লুপ
    • লুপের জন্য
    • নেস্টেড লুপ
    • লুপ কন্ট্রোল স্টেটমেন্ট
    • বিবৃতি চালিয়ে যান
    • ব্রেক স্টেটমেন্ট
    • বিবৃতি পাস
  • সংখ্যা
    • সংখ্যার ধরন রূপান্তর
    • র্যান্ডম সংখ্যা ফাংশন
    • ত্রিকোণমিতিক ফাংশন
    • গাণিতিক ফাংশন
  • স্ট্রিংস
    • একটি স্ট্রিং তৈরি করা হচ্ছে
    • স্ট্রিং স্পেশাল অপারেটর
    • স্ট্রিং ফরম্যাটিং অপারেটর
    • পালাবার অক্ষর
    • স্ট্রিং পদ্ধতিতে নির্মিত
  • টিপলস
  • তালিকা
  • অভিধান
    • একটি অভিধান তৈরি করা হচ্ছে
    • একটি অভিধানে উপাদান যোগ করা হচ্ছে
    • অভিধান থেকে উপাদান অপসারণ
    • পাইথন অভিধান পদ্ধতি
  • তারিখ এবং সময়
    • সময় Tuple
    • সময় মডিউল
    • ক্যালেন্ডার মডিউল
  • ফাংশন
    • একটি ফাংশন সংজ্ঞায়িত কিভাবে
    • একটি ফাংশন কলিং
    • রেফারেন্স দ্বারা পাস
    • মান দ্বারা পাস
    • ফাংশন আর্গুমেন্ট
    • পরিবর্তনশীল-দৈর্ঘ্যের আর্গুমেন্ট
    • প্রয়োজনীয় যুক্তি
    • ডিফল্ট আর্গুমেন্ট
    • মূলশব্দ আর্গুমেন্ট
    • বেনামী ফাংশন
  • মডিউল
    • আমদানি বিবৃতি
    • আমদানি বিবৃতি থেকে
    • আমদানি থেকে * বিবৃতি
    • মডিউল সনাক্তকরণ
    • স্থানীয়() এবং গ্লোবাল() ফাংশন
    • নামস্থান এবং স্কোপিং
    • dir( ) ফাংশন
    • রিলোড() ফাংশন
  • ফাইল I/O
    • একটি ফাইল খোলা হচ্ছে
    • ফাইল অবজেক্টের বৈশিষ্ট্য
    • একটি ফাইল বন্ধ করা হচ্ছে
    • বিবৃতি সহ
    • লেখার পদ্ধতি
    • পড়ার পদ্ধতি
    • rename() পদ্ধতি
    • অপসারণ() পদ্ধতি
    • ফাইল অবস্থান
  • ব্যতিক্রম
    • একটি ব্যতিক্রম কি?
    • একটি ব্যতিক্রম হ্যান্ডলিং
    • একটি ব্যতিক্রম উত্থাপন
    • আদর্শ ব্যতিক্রমের তালিকা
    • ব্যবহারকারী সংজ্ঞায়িত ব্যতিক্রম
    • পাইথনে দাবী
  • ক্লাস এবং অবজেক্ট
    • ক্লাস তৈরি করা হচ্ছে
    • ক্লাস অবজেক্ট
    • অ্যাট্রিবিউট অ্যাক্সেস করা
    • অন্তর্নির্মিত বর্গ বৈশিষ্ট্য
    • আবর্জনা সংগ্রহ
    • শ্রেণী উত্তরাধিকার
    • ওভাররাইডিং পদ্ধতি
    • নিয়মিত অভিব্যক্তি
    • ম্যাচ ফাংশন
    • অনুসন্ধান ফাংশন
    • রেগুলার এক্সপ্রেশন মডিফায়ার
    • রেগুলার এক্সপ্রেশন প্যাটার্ন
    • ক্যারেক্টার ক্লাস
    • পুনরাবৃত্তি মামলা
    • নোঙ্গর
  • সিজিআই প্রোগ্রামিং
    • ওয়েব ব্রাউজিং
    • HTTP হেডার
    • CGI এনভায়রনমেন্ট ভেরিয়েবল
    • GET পদ্ধতি
    • পোস্ট পদ্ধতি
    • CGI এ কুকিজ ব্যবহার করা
    • এটা কিভাবে কাজ করে?
  • মাইএসকিউএল ডাটাবেস অ্যাক্সেস
    • ডাটাবেস টেবিল তৈরি করা হচ্ছে
    • ইনসার্ট অপারেশন
    • অপারেশন পড়ুন
    • অপারেশন আপডেট করুন
    • ডিলিট অপারেশন
    • লেনদেন সম্পাদন
    • কমিট অপারেশন
    • রোলব্যাক অপারেশন
    • ডাটাবেস সংযোগ বিচ্ছিন্ন করা হচ্ছে
    • হ্যান্ডলিং ত্রুটি
  • নেটওয়ার্ক
    • সকেট কি?
    • সকেট মডিউল
    • পাইথন ইন্টারনেট মডিউল
  • ইমেইল পাঠানো হচ্ছে
    • পাইথন ব্যবহার করে একটি HTML ইমেল পাঠানো
    • একটি ই-মেইল হিসাবে সংযুক্তি পাঠানো
  • মাল্টিথ্রেড প্রোগ্রামিং
    • একটি নতুন থ্রেড শুরু হচ্ছে
    • থ্রেডিং মডিউল
    • থ্রেড সিঙ্ক্রোনাইজ করা
    • মাল্টিথ্রেডেড অগ্রাধিকার সারি
  • XML প্রসেসিং
    • XML কি?
    • XML পার্সার আর্কিটেকচার এবং API
    • SAX API-এর সাথে XML পার্স করা হচ্ছে
      • মেক_পার্সার পদ্ধতি
      • পার্স পদ্ধতি
      • পার্সস্ট্রিং পদ্ধতি
  • GUI প্রোগ্রামিং
    • Tkinter উইজেট
  • জ্যামিতি ব্যবস্থাপনা
  • প্রস্তাবিত প্রবন্ধ

টিপলস

Tuples হল পাইথন বস্তুর একটি সংগ্রহ যা কমা দ্বারা পৃথক করা হয়। কিছু উপায়ে, টিপলগুলি সূচীকরণ, নেস্টেড অবজেক্ট এবং পুনরাবৃত্তির পরিপ্রেক্ষিতে একটি তালিকার মতো, কিন্তু একটি টিপল অপরিবর্তনীয়, পরিবর্তনযোগ্য তালিকার বিপরীতে। তালিকা এবং টিপলের মধ্যে পার্থক্য হল: তালিকা বন্ধনী ( [ ] ) এ আবদ্ধ এবং তাদের আকার এবং উপাদান পরিবর্তন করা যেতে পারে, যখন টিপলগুলি বৃত্তাকার বন্ধনী ( ( ) ) এ আবদ্ধ থাকে এবং আপডেট করা যায় না। Tuples শুধুমাত্র পঠন তালিকা হতে পারে.

img 617dd2683a2aa

আউটপুট

img 617dd268e0cbf

Tuples মধ্যে মান অ্যাক্সেস

টিপল মানগুলি অ্যাক্সেস করতে, সেই সূচকে উপলব্ধ মান পেতে সূচক বা সূচকগুলির সাথে স্লাইস করার জন্য বর্গাকার বন্ধনী ব্যবহার করুন।

img 617dd2692c3b1

আউটপুট

img 617dd26960e67

টিপল আপডেট করা হচ্ছে

Tuples অপরিবর্তনীয় এবং এর মানে আপনি tuple উপাদানের মান আপডেট বা পরিবর্তন করতে পারবেন না। আপনি নতুন tuples তৈরি করতে tuples অংশ নিতে পারেন.

img 617dd26999dc9

আউটপুট

img 617dd26a0b671

বেসিক Tuple অপারেটর

Tuples * এবং + অপারেটর স্ট্রিং হিসাবে একই প্রতিক্রিয়া; তারা এখানে সংমিশ্রণ এবং পুনরাবৃত্তি মানে, ফলাফলটি একটি নতুন টিপল, স্ট্রিং নয়।

পাইথন এক্সপ্রেশন ফলাফল বর্ণনা
('হাই!',) * 4('হাই!', 'হাই!', 'হাই!', 'হাই!')পুনরাবৃত্তি
x এর জন্য (4,5,6): প্রিন্ট x,4 5 6পুনরাবৃত্তি
3 ইঞ্চি (1, 2, 3)সত্যসদস্যপদ
(1, 2, 3) + (4, 5, 6)(1, 2, 3, 4, 5, 6)সংমিশ্রণ
শুধুমাত্র ((1, 2, 3))3দৈর্ঘ্য

Tuple ফাংশন মধ্যে নির্মিত

হ্যাঁ না ফাংশন বর্ণনা
একমিনিট (টুপল)এটি ন্যূনতম মান সহ টিপল থেকে একটি আইটেম প্রদান করে।
দুইসর্বোচ্চ (টুপল)এটি সর্বোচ্চ মান সহ টিপল থেকে একটি আইটেম প্রদান করে।
3cmp(tuple1, tuple2)এটি উভয় টিপলের উপাদানের তুলনা করে।
4শণএটি একটি টিপলের মোট দৈর্ঘ্য দেয়।
5টিপল(seq)এটি একটি তালিকাকে একটি টিপলে রূপান্তর করে।

ইনডেক্সিং এবং স্লাইসিং

Tuples হল সিকোয়েন্স, তাই ইন্ডেক্সিং এবং স্লাইসিং টিপলগুলির জন্য একইভাবে কাজ করে যেমনটি তারা স্ট্রিংয়ের জন্য করে।

পাইথন এক্সপ্রেশন ফলাফল বর্ণনা
এল[-২]'স্প্যাম'নেতিবাচক: ডান থেকে গণনা.
এল[২]'স্প্যাম!'অফসেটগুলি শূন্য থেকে শুরু হয়
এল [১:]['স্প্যাম', 'স্প্যাম!']স্লাইসিং বিভাগ আনয়ন

একটি tuple মুছে ফেলা হচ্ছে

পৃথক tuple উপাদান অপসারণ করা সহজ নয়. বাতিল করা অবাঞ্ছিত উপাদানগুলির সাথে আরেকটি টিপল একত্রিত করার ক্ষেত্রে কোনও ভুল নেই।

img 617dd26a51900

আউটপুট

img 617dd26a89d01

তালিকা

পাইথনের ডেটা টাইপের মধ্যে তালিকাগুলি সবচেয়ে নমনীয়। একটি তালিকায় এমন আইটেম রয়েছে যা কমা দ্বারা পৃথক করা হয় এবং বর্গাকার বন্ধনীতে ([]) আবদ্ধ থাকে। তালিকাগুলি C-এর অ্যারেগুলির সাথে একরকম। তাদের মধ্যে একটি পার্থক্য হল যে একটি তালিকার সমস্ত আইটেম একটি ভিন্ন ডেটা টাইপের হতে পারে।

একটি তালিকায় সংরক্ষিত মানগুলি তালিকার শুরুতে 0 থেকে শুরু করে এবং -1-এর শেষ পর্যন্ত কাজ করে সূচী সহ স্লাইস অপারেটর ব্যবহার করে অ্যাক্সেস করা যেতে পারে। প্লাস (+) চিহ্ন হল তালিকা সংযোজন অপারেটর, এবং তারকাচিহ্ন (*) হল পুনরাবৃত্তি অপারেটর।

img 617dd26ac4de6

আউটপুট

img 617dd26b1d70c

তালিকায় মান অ্যাক্সেস করা

তালিকার মানগুলি অ্যাক্সেস করতে, সেই সূচকে উপলব্ধ মান পেতে সূচকের সাথে স্লাইস করার জন্য আপনার বর্গাকার বন্ধনী ব্যবহার করা উচিত।

তালিকা আপডেট করা হচ্ছে

আপনি অ্যাসাইনমেন্ট অপারেটরের বাম দিকের স্লাইস দিয়ে তালিকার একক বা একাধিক উপাদান আপডেট করতে পারেন এবং আপনি append() পদ্ধতির সাথে একটি তালিকায় বিশদ বিবরণ যোগ করতে পারেন।

মৌলিক তালিকা অপারেটর

তালিকাগুলি * এবং + অপারেটরগুলিতে স্ট্রিংগুলির মতোই প্রতিক্রিয়া জানায়; তারা এখানে সংমিশ্রণ এবং পুনরাবৃত্তি মানে, ফলাফলটি একটি নতুন টিপল, স্ট্রিং নয়।

পাইথন এক্সপ্রেশন ফলাফল বর্ণনা
('হাই!',) * 4('হাই!', 'হাই!', 'হাই!', 'হাই!')পুনরাবৃত্তি
x এর জন্য (4, 5, 6): প্রিন্ট x,4 5 6পুনরাবৃত্তি
3 ইঞ্চি (1, 2, 3)সত্যসদস্যপদ
(1, 2, 3) + (4, 5, 6)(1, 2, 3, 4, 5, 6)সংমিশ্রণ
শুধুমাত্র ((1, 2, 3))3দৈর্ঘ্য

বিল্ট ইন লিস্ট ফাংশন এবং মেথড

হ্যাঁ না ফাংশন বর্ণনা
একমিনিট (তালিকা)এটি ন্যূনতম মান সহ একটি তালিকা থেকে একটি আইটেম প্রদান করে।
দুইসর্বোচ্চ (তালিকা)এটি সর্বাধিক মান সহ একটি তালিকা থেকে একটি আইটেম প্রদান করে।
3cmp(তালিকা1, তালিকা2)এটি উভয় তালিকার উপাদানের তুলনা করে।
4শণ (তালিকা)এটি একটি তালিকার মোট দৈর্ঘ্য দেয়।
5টিপল(seq)এটি একটি তালিকাকে একটি তালিকায় রূপান্তর করে।
হ্যাঁ না পদ্ধতি বর্ণনা
একlist.count(obj)এটি তালিকায় কতবার obj ঘটে তার গণনা প্রদান করে।
দুইlist.extend(seq)এটি তালিকায় seq এর বিষয়বস্তু যুক্ত করে।
3list.append(obj)এটি তালিকায় অবজেক্ট অবজেক্ট যুক্ত করে।
4list.sort([func])এটি তালিকার বস্তু বাছাই করে, এবং দেওয়া হলে তুলনা ফাংশন ব্যবহার করে।
5list.remove(obj)এটি তালিকা থেকে বস্তুগুলিকে সরিয়ে দেয়।

ইনডেক্সিং এবং স্লাইসিং

তালিকাগুলি সিকোয়েন্স, তাই সূচীকরণ এবং স্লাইসিং তালিকার জন্য একইভাবে কাজ করে যেমন তারা স্ট্রিংয়ের জন্য করে।

পাইথন এক্সপ্রেশন ফলাফল বর্ণনা
এল[-২]'স্প্যাম'নেতিবাচক: ডান থেকে গণনা.
এল[২]'স্প্যাম!'অফসেটগুলি শূন্য থেকে শুরু হয়
এল [১:]['স্প্যাম', 'স্প্যাম!']স্লাইসিং বিভাগ আনয়ন

তালিকা উপাদান মুছুন

তালিকা থেকে উপাদানগুলি সরানোর জন্য, আপনি কোন উপাদানটি মুছতে চান তা যদি আপনি জানেন তবে আপনি ডেল স্টেটমেন্ট ব্যবহার করতে পারেন। আপনি অপসারণ() পদ্ধতিও করতে পারেন।

img 617dd26b7a790

আউটপুট

img 617dd26bcbf63