এই টিউটোরিয়ালে আমরা struct মডিউল সম্পর্কে শিখব।
struct মডিউলটি পাইথনের নেটিভ ডেটা টাইপগুলোকে বাইট স্ট্রিং (string of bytes) এ রূপান্তর করে এবং বিপরীত কাজটিও করে। এটি পাইথন ৩-এ বিল্ট-ইন।
C ল্যাঙ্গুয়েজের ডেটা টাইপ নোটেশন জানতে হয় struct ব্যবহার করার জন্য। কিছু উদাহরণ:
| Data Type | Format Character |
|---|---|
| int | i |
| char | c |
| string | s |
| float | f |
ডেটা টাইপকে বাইটে রূপান্তর করে। প্রথম আর্গুমেন্টে ফরম্যাট স্ট্রিং, বাকি আর্গুমেন্টগুলো ভ্যালু।
import struct
print(struct.pack('14s i', b'Tutorialspoint', 2020))
print(struct.pack('i i f 3s', 1, 2, 3.5, b'abc'))
b'Tutorialspoint\x00\x00\xe4\x07\x00\x00' b'\x01\x00\x00\x00\x02\x00\x00\x00\x00\x00`@abc'
বাইট থেকে পাইথন ডেটা টাইপে রূপান্তর করে। টাপল রিটার্ন করে।
import struct
converted_bytes = struct.pack('14s i', b'Tutorialspoint', 2020)
print(struct.unpack('14s i', converted_bytes))
(b'Tutorialspoint', 2020)
struct মডিউল বাইনারি ডেটা হ্যান্ডলিং, নেটওয়ার্ক প্রোটোকল, ফাইল ফরম্যাটে খুব উপকারী।