Уведомления

Группа в Telegram: @pythonsu

#1 Май 24, 2020 21:33:17

Sydyk_0312
Зарегистрирован: 2020-05-24
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Домашнее задание по Python

Ребят всем привет. Я начинающий в сфере Python. Есть задача по Python надо решить прошу помочь в решении задач. Спасибо большое.
Задание №1 . Посчитайте распределение тематик новостей в файле URL.txt (то есть какое количество раз встречается страница с каждой темой). Тематикой можно считать первое слово между знаками ‘/’ в URL новости.
Файл прикрепил.

Прикреплённый файлы:
attachment urls.txt (5,8 KБ)

Офлайн

#2 Май 26, 2020 22:03:44

voitovtv
Зарегистрирован: 2020-05-20
Сообщения: 7
Репутация: +  1  -
Профиль   Отправить e-mail  

Домашнее задание по Python

Для меня как для начинающего, это было сложно, но интересно, вот к чему пришел.
Надеюсь поможет)

 # from python.su
from collections import Counter
import re
a = []
o = open('urls.txt', 'r')
f = o.read().split()
st = str(f)
r = re.findall('/\w+/', st)
for x in r:
    item = ''.join(x)
    a.append(item)  
c = Counter(a)
print(c, end='\n')

>>> Counter({'/starlife/': 13, ‘/politics/’: 11, ‘/video/’: 10, ‘/world/’: 9, ‘/articles/’: 7, ‘/incidents/’: 6, ‘/science/’: 6, ‘/business/’: 5, ‘/cis/’: 4, ‘/head/’: 3, ‘/sport/’: 3, ‘/middleeast/’: 3, ‘/economics/’: 3, ‘/latest/’: 2, ‘/health/’: 2, ‘/lifestyle/’: 2, ‘/moscow_city/’: 1, ‘/travel/’: 1, ‘/auto/’: 1, ‘/scitech/’: 1, ‘/slides/’: 1, ‘/finances/’: 1, ‘/europe/’: 1, ‘/kinomusic/’: 1})

Офлайн

#3 Май 27, 2020 01:24:35

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

Домашнее задание по Python

voitovtv
Для меня как для начинающего, это было сложно, но интересно, вот к чему пришел.
Нужно “куда-то” подать файл и получить “оттуда” нужные слова.
Нужно “куда-то” подать полученные слова и получить “оттуда” нужный словарь.
Нужно “куда-то” подать полученный словарь и получить вывод на экран.
Все эти пункты должны быть хорошо отделены друг от друга, чтобы любой из них можно было произвольно заменить на любой другой.



Офлайн

#4 Май 27, 2020 09:53:09

voitovtv
Зарегистрирован: 2020-05-20
Сообщения: 7
Репутация: +  1  -
Профиль   Отправить e-mail  

Домашнее задание по Python

py.user.next
Все эти пункты должны быть хорошо отделены друг от друга, чтобы любой из них можно было произвольно заменить на любой другой.
Соглашусь. Я сам начинающий, поэтому в начале пути - все методы хороши.
Если возможно, скажите где что не так.

Отредактировано voitovtv (Май 27, 2020 09:58:32)

Офлайн

#5 Май 27, 2020 11:04:45

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

Домашнее задание по Python

voitovtv
Если возможно, скажите где что не так.
Напиши функцию, которая принимает имя файла, что-то внутри делает с этим файлом и возвращает список слов из него.
Напиши функцию, которая принимает строку файла, что-то внутри делает с этой строкой и возвращает слово из неё.
В первой функции используй вызов второй функции.

Функции писать умеешь? Слово def для начала функции, слово return для возврата значения из функции.

Пример
Функция принимает число и возвращает его куб.
  
>>> def x3(x):
...     return x * x * x
... 
>>> x3(100)
1000000
>>>
Функция принимает строку и оборачивает её в квадратные скобки.
  
>>> def brackets(s):
...     return '[' + s + ']'
... 
>>> brackets('abcdef')
'[abcdef]'
>>>
Функция принимает список чисел, возводит каждое в куб и оборачивает в квадратные скобки.
  
>>> def x3(x):
...     return x * x * x
... 
>>> def brackets(s):
...     return '[' + s + ']'
... 
>>> def wrap_numbers(lst):
...     out = []
...     for i in lst:
...         out.append(brackets(str(x3(i))))
...     return out
... 
>>> wrap_numbers([1, 25, 100])
['[1]', '[15625]', '[1000000]']
>>>



Отредактировано py.user.next (Май 27, 2020 11:05:24)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version