TGViewer
پایتون | Data Science | Machine Learning پایتون | Data Science | Machine Learning @python4all_pro · 24.2K subscribers
Post #825 3.4K
📚 آموزش ساخت سیستم مکان‌یابی ساده (GPS) در پایتون بدون ماژول‌های خارجی 📚

سلام دوستان! امروز می‌خوایم یاد بگیریم چطور یک سیستم مکان‌یابی ساده (GPS) رو بدون استفاده از هیچ ماژول خارجی در پایتون پیاده‌سازی کنیم. این آموزش برای کسانی که می‌خوان اصول پایه مکان‌یابی رو بفهمند بسیار مناسب هست.

1. تنظیمات اولیه 🛠️
ابتدا نیاز داریم که کتابخانه‌های ضروری پایتون رو وارد کنیم.

import math

2. ایجاد توابع مورد نیاز 📋
برای پیاده‌سازی سیستم GPS، نیاز به برخی توابع پایه‌ای داریم:

محاسبه فاصله بین دو نقطه جغرافیایی با استفاده از فرمول هاروسین
def haversine(lat1, lon1, lat2, lon2):
R = 6371 # شعاع زمین به کیلومتر
dlat = math.radians(lat2 - lat1)
dlon = math.radians(lon2 - lon1)
a = math.sin(dlat / 2) ** 2 + math.cos(math.radians(lat1)) * math.cos(math.radians(lat2)) * math.sin(dlon / 2) ** 2
c = 2 * math.atan2(math.sqrt(a), math.sqrt(1 - a))
distance = R * c
return distance

تعیین موقعیت جغرافیایی ی **📍
فرض کنیم چند موقعیت جغرافیایی داریم و می‌خواهیم فاصله بین آن‌ها را محاسبه کنیم.

locations = {
"location1": (35.6892, 51.3890), # تهران
"location2": (34.0522, -118.2437), # لس‌آنجلس
"location3": (48.8566, 2.3522) # پاریس
}

def calculate_distances(locations):
distances = {}
keys = list(locations.keys())
for i in range(len(keys)):
for j in range(i + 1, len(keys)):
loc1, loc2 = keys[i], keys[j]
lat1, lon1 = locations[loc1]
lat2, lon2 = locations[loc2]
distance = haversine(lat1, lon1, lat2, lon2)
distances[(loc1, loc2)] = distance
return distances

distances = calculate_distances(locations)
for loc_pair, dist in distances.items():
print(f"فاصله بین {loc_pair[0]} و {loc_pair[1]}: {dist:.2f} کیلومتر")



#Python #library

🆔 https://t.me/Python4all_pro
  • 🆒 6
  • 👍 5
  • ❤ 1
  • 🔥 1
More from @python4all_pro
  1. Oct 3, 2026🟣کتاب Oxford word skills یک بار جایزه بهترین کتاب آموزش زبان انگلیسی سال را دریافت کرده.…
  2. Oct 2, 2026💥 ۲۰۰ هزار تومان تخفیفِ بیشتر علاوه بر تخفیفِ ۷۵ درصدی موجود در سایت | اشتراک یک ساله فرا…
  3. Sep 29, 2026What better way to understand a powerful tool like Claude Code than to build your own vers…
  4. Sep 28, 2026🧨 ۲۰۰ آموزش جدید دیگر، جایگزین آموزش‌های قبلی شد... 💯 ۴۰۰+۲۰۰ آموزش در فرادرس، هر آموزش…
  5. Sep 28, 202625 GitHub Repositories Every Python Developer Should Know! Want to improve your Python ski…
  6. Sep 27, 202640+ FREE Python Books from Amazon! Want to improve your Python skills without spending a f…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →