Определите род существительных во французском языке с помощью примеров кода

Во французском языке каждое существительное имеет род — мужской или женский. Определение рода существительного имеет важное значение, поскольку оно влияет на формы артиклей, прилагательных и местоимений, которые сопровождают существительное. Однако во французском языке не существует однозначного правила определения рода существительного. Вот несколько методов, которые можно использовать для определения рода существительного, а также примеры кода на Python:

  1. Поиск в словаре.
    Вы можете создать словарь, содержащий род часто используемых существительных. Вот пример:

    genders = {
       "la maison": "feminine",
       "le livre": "masculine",
       # Add more nouns and their genders
    }
    def get_gender(noun):
       return genders.get(noun.lower(), "unknown")
    noun = "la maison"
    gender = get_gender(noun)
    print(f"The gender of '{noun}' is {gender}.")
  2. Машинное обучение.
    Вы можете научить модель машинного обучения предсказывать пол существительного на основе его характеристик. Этот подход требует помеченного набора данных существительных соответствующего пола. Вот упрощенный пример использования scikit-learn:

    from sklearn.feature_extraction.text import CountVectorizer
    from sklearn.linear_model import LogisticRegression
    # Training data
    nouns = ["maison", "livre", ...]  # Nouns
    genders = ["feminine", "masculine", ...]  # Corresponding genders
    # Feature extraction
    vectorizer = CountVectorizer()
    X = vectorizer.fit_transform(nouns)
    # Model training
    model = LogisticRegression()
    model.fit(X, genders)
    # Prediction
    noun = "maison"
    X_test = vectorizer.transform([noun])
    gender = model.predict(X_test)[0]
    print(f"The gender of '{noun}' is {gender}.")
  3. Поиск через API.
    Существуют API, предоставляющие информацию о роде французских существительных. Одним из таких API является API Genderize.io, который можно использовать для определения пола существительного на основе его написания. Вот пример использования API Genderize.io:

    import requests
    def get_gender(noun):
       url = f"https://api.genderize.io/?name={noun}&country_id=fr"
       response = requests.get(url)
       data = response.json()
       gender = data.get("gender")
       return gender
    noun = "maison"
    gender = get_gender(noun)
    print(f"The gender of '{noun}' is {gender}.")