> For the complete documentation index, see [llms.txt](https://python.howtocode.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://python.howtocode.dev/file-exception/write-file.md).

# ফাইলে লেখা

পাইথনের মেথডের নাম গুলোও কেন যেন আমার কথা মাথায় রেখেই দেয়া। যেমন ফাইল পড়ার ফাংশনের নাম `read` এবং কেউ না বলে দিলেও ফাইলে লেখার ফাংশনের নাম যে `write` সেটা আপনি এতক্ষণে ধরে নিয়েছে। আর হ্যাঁ, আপনার ধারনা ভুল না। ফাইল থেকে পড়েন আর ফাইলে লিখেন, যাই করেন না কেন ফাইলকে আগে ওপেন করেই নিতে হবে। আবার কাজ শেষে বন্ধ করতে হবে (উচিৎ)।

উদাহরণ,

```python
file_to_work = open("Test.txt", "w")
file_to_work.write("I am writing!!!")
file_to_work.close()

file_to_work = open("Test.txt", "r")
print(file_to_work.read())
file_to_work.close()
```

উপরোক্ত প্রোগ্রামের দুটি অংশ। প্রথম অংশে ফাইলকে ওপেন করে সেখানে একটি লাইন লেখা হয়েছে। আমাদের চলতি উদাহরণ মোতাবেক এই নামের ফাইলটি আগে থেকেই ছিল। কিন্তু `w` মোডে খোলার কারনে এবং এখানে নতুন করে লেখার কারনে ওই ফাইলের আগের সব কন্টেন্ট মুছে যাবে এবং নতুন `write` করা কন্টেন্ট লেখা হবে। যদি ওই নামের ফাইল না থাকতো, তাহলে পাইথন নতুন করে ওই নামে একটি ফাইল তৈরি করে সেখানে লিখতো। লেখা শেষে ফাইলটিকে ক্লোজ করা হয়েছে।\
দ্বিতীয় অংশে আবার সেই ফাইলকে পড়ার জন্য `r` মোডে খোলা হয়েছে এবং সব কন্টেন্ট পড়ে স্ক্রিনে প্রিন্ট করা হয়েছে।

আউটপুট,

```python
I am writing!!!
```

চাইলে ফাইল লেখার কাজ সফল হল কিনা এবং কি পরিমাণ কন্টেন্ট ফাইলে লেখা হল সেটা যাচাই করার জন্য `write` মেথডের রিটার্ন ভ্যালুকে ক্যাপচার করে দেখা যেতে পারে নিচের মত করে -

```python
file_to_work = open("Test.txt", "w")
is_writing_done = file_to_work.write("I am writing!!!")

if is_writing_done:
    print("Yes, {0} byte(s) has been written!".format(is_writing_done))
file_to_work.close()
```

আউটপুট,

```python
Yes, 15 byte(s) has been written!
```

> সংকলন - [নুহিল মেহেদী](https://nuhil.net)
