Проверьте, содержит ли массив конкретную строку в numpy - PullRequest
0 голосов
/ 26 июня 2019

Я пытаюсь сохранить URL-адреса университетов в массиве, проверьте, содержат ли элементы ".ec" в конце.Если они это сделают, то лишите "www."и ".edu"

Пока это моя попытка:

import numpy as np


def localuniversities():
    sites = input("Enter sites separated by a comma and space: ").lower().split(", ")
    arraysites = np.asarray(sites)
    print(arraysites)
    matching = [s for s in arraysites if ".ec" in s]
    arraysites1 = [url.rstrip(".edu.ec") for url in matching]
    arraysites2 = [url.strip("www.").upper() for url in arraysites1]
    unique = np.unique(arraysites2, axis=0)
    print(unique)


print(localuniversities())

РЕДАКТИРОВАТЬ: удалось исправить проверку.

У меня все еще есть проблема, что если явведите сайт и слово оканчивается на «d», например «www.harvard.edu», оно также удаляет «d».

Любая помощь будет принята.

1 Ответ

0 голосов
/ 26 июня 2019

Во-первых, если я зайду на сайт, скажем, "www.harvard.edu", он скинет D с него и будет выглядеть как "HARVAR".

это происходит потому, что функция rstrip получает набор символов для удаления из конца строки, а не целое слово для удаления, если оно существует. (строка представляет собой набор символов). это также верно для функции strip. вот почему D был удален.

Во-вторых, насколько я могу судить, это не проверка.

как сказал @Jeff_h, это потому, что вы определяете переменную check только один раз, что приведет к тому, что цикл for будет либо strip и rstrip для всех сайтов, либо нет.

после устранения всех проблем вот что я получил

def localuniversities():
    sites = input("Enter sites separated by a comma and space: ").lower().split(", ")
    temp = []
    for site in sites:
        if site.endswith(".ec"):
            temp.append(site[site.find("www") + len("www") + 1:site.rfind(".edu.ec")])
    return temp


print(localuniversities())

Надеюсь, это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...