why is the price of Bitcoin in Iran is more expensive than global prices?
It isn't. The "news" that Bitcoin was selling for $24,000 in Iran was based on the incorrect exchange rate - the subsidized exchange rate of 1 USD to 42k IRR set by the government for imports of certain goods. The actual exchange rate of 1 USD to 140k IRR gives the real price.