حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود

تشخیص کشور از روی شماره موبایل

تمرین آسان 65 visibility link download flag new_releases جدید

برنامه‌ای بنویسید که شمارهٔ تلفن همراه را از کاربر دریافت کند و کشور مرتبط با آن را نمایش دهد.

👨‍💻 13 ساعت قبل کاربر ناشناس این تمرین رو مشاهده کرد
👨‍💻 15 ساعت قبل Shayan.h16 این تمرین رو مشاهده کرد
👨‍💻 1 ساعت قبل Mahdivh312 این تمرین رو مشاهده کرد

reply 3

visibility

برای تشخیص کشور، شماره باید با پیش‌شمارهٔ بین‌المللی وارد شود؛ مثلاً +98912...:

import re

country_codes = {
    "+98": "ایران",
    "+93": "افغانستان",
    "+90": "ترکیه",
    "+44": "بریتانیا",
    "+49": "آلمان",
    "+33": "فرانسه",
    "+971": "امارات",
    "+91": "هند",
    "+92": "پاکستان",
    "+1": "آمریکا یا کانادا",
}

phone = input("شماره تلفن را وارد کنید: ").strip()
phone = re.sub(r"[\s()-]", "", phone)

if phone.startswith("00"):
    phone = "+" + phone[2:]

for code in sorted(country_codes, key=len, reverse=True):
    if phone.startswith(code):
        print(country_codes[code])
        break
else:
    print("کشور شناسایی نشد")
پاسخ هوش مصنوعی Ai Python
import phonenumbers 
from phonenumbers import geocoder

number = phonenumbers.parse(input("Enter Phone Number With your Region code : "))
country = geocoder.description_for_number(number , "en")
print(f"You`re region is :{country}")
import phonenumbers
from phonenumbers import geocoder

def get_country_from_phone(phone_number, default_region=None):
    """
    تشخیص کشور از شماره تلفن

    Args:
        phone_number (str): شماره تلفن (با کد کشور)
        default_region (str): منطقه پیش‌فرض برای شماره‌های بدون کد کشور

    Returns:
        str: نام کشور یا پیام خطا
    """
    try:
        # تجزیه شماره تلفن
        # اگر شماره با + شروع شود، default_region لازم نیست
        parsed_number = phonenumbers.parse(phone_number, default_region)

        # بررسی معتبر بودن شماره
        if not phonenumbers.is_valid_number(parsed_number):
            return "❌ شماره تلفن نامعتبر است"

        # دریافت نام کشور بر اساس کد کشور
        country_name = geocoder.description_for_number(parsed_number, "fa")

        if country_name:
            return f"

ارسال جواب

جوابت را با Markdown بنویس و ثبت کن

×
بستن