[USER (data scientist)]: Hey Tapilot, I've got this "melbourne_housing" dataset, and I'm trying to figure out how many properties are in the affordable range of $300,000 to $600,000. Can you help me filter it down? Please generate and display a DataFrame to filter and visualize affordable housing options from the 'melbourne_housing' dataset, where the price range is between 300,000 and 600,000.
My template of code snippet is:

---BEGIN CODE TEMPLATE---

import matplotlib.pyplot as plt
import pandas as pd
import pickle

melbourne_housing = pd.read_csv("melb_data.csv") 

# YOUR SOLUTION BEGIN:
<code1>
[GENERATE YOUR CODE]
</code1>
# YOUR SOLUTION END:

print(affordable_housing)

# save data
pickle.dump(affordable_housing,open("./pred_result/affordable_housing.pkl","wb"))

---END CODE TEMPLATE---

[YOU (AI assistant)]: Absolutely! Let's start by filtering the dataset based on that price range. Here's the code for that: 
