Вот и началось познание курса "Базовый Python"

В курсе 14 тем рассчитанных на 29 часов. При ежедневном выделении на занятия часа по три без пропусков пройти можно не напрягаясь, но мы решили дать себе знаний максимум и уложились за семь дней. При этом часть часа по два уделял занятиям на основной работе а затем дома с шести вечера до полуночи примерно по шесть часов. Ну никак не получилось 29 часов. Мой личный результат составил (7 дней) * (8 часов) = 56 часов, а это уже почти в 2 раза дольше запланированного времени.

Курс в своем составе содержал следующие темы:

1. БPy. Переменные и типы данных.

2. БРу. Строки.

3. БРу. Списки.

4. БРу. Цикл 'for'.

5. БРу. Вложенные списки.

6. БРу. Условный оператор.

7. БРу. Функции.

8. БРу. Словари.

9. БРу. Библиотека Pandas.

10. БРу. Предварительная обработка данных.

11. БРу. Анализ данных и оформление результатов.

12. БРу. Jupyter Notebook.

13. БРу. Проект: Музыка больших городов.

14. БРу. Заключение.

 

Следующая тема: БPy. Переменные и типы данных.

Следующий раздел: Предобработка данных

Вернуться в оглавление: Я.Практикум

После его освоения хочется сказать, что курс достаточно познавательный и нужный, хотя и носит поверхностный характер. Из всего курса больше всего запомнил команду print() т.к. набирал её более часто. Ну и за собой заметил, что наработал постоянный навык набирать [Ctrl + Enter] в тренажере Jupyter Notebook, до такой степени, что при наборе текста в Word для перехода на новую строку нажимаю сразу две клавиши.

В процессе обучения в пачке нас попросили не выкладывать материалы курсов, но вот решение задач я вам покажу, может быть кому то и пригодится в дальнейшем, т.к. у многих студентов возникало много вопросов, ведь в тренажер заложен один правильный ответ, даже если твоё решение правильное он говорит, что ты не прав подумай ещё.

1. Переменные и типы данных. Вывод данных и арифметических операций.

 1.1 Введение.

 1.2 Могучий Python.

 1.3 Переменные.

Задание 1

Создайте переменную, хранящую количество друзей Оушена из фильма «Одиннадцать друзей Оушена». Назовите переменную ocean_friends. Поместите в неё значение 11 с помощью оператора присваивания.

# напишите код здесь
ocean_friends = 11
print(ocean_friends)

Задание 2

У мистера Оушена появилось ещё двое друзей. Добавьте на новой строке код, который заменит значение в переменной ocean_friends на 13. Используйте оператор присваивания.

ocean_friends = 11
# напишите код здесь
ocean_friends = 13
print(ocean_friends)

Задание 3

Мы сохранили имена двух актёров в переменных. И нарушили два правила хорошего стиля. Исправьте нас, пожалуйста. Вывод на экран в этой задаче не нужен.

ocean = 'Джордж Клуни'
ocean_friend = 'Брэд Питт'

Задание 4

Мы попробовали перезаписать переменные и заменить имена актёров на имена их героев. Не получилось — какая-то синтаксическая ошибка. Проверьте первые символы названий переменных. Исправьте ошибочные названия. Вывод на экран в этой задаче не нужен.

ocean = 'Джордж Клуни'
ocean_friend = 'Брэд Питт'
ocean = 'Дэнни'
ocean_friend = 'Расти'

 

 1.4 Функция  print()

Задание 1

Таблица описывает три музыкальных трека: Исполнитель Трек Длительность (сек) Sting Shape Of My Heart 278 Sade No Ordinary Love 322 Red Hot Chili Peppers Californication 321 В коде уже объявлена переменная, которая хранит название трека исполнителя Sting из таблицы выше. Выведите значение переменной на экран функцией print().

sting_track_name = 'Shape Of My Heart'
print(sting_track_name)# выведите её значение на экран здесь
Shape Of My Heart

Задание 2

Исполнитель Трек Длительность (сек) Sting Shape Of My Heart 278 Sade No Ordinary Love 322 Red Hot Chili Peppers Californication 321 Объявите переменную, которая будет хранить длительность трека исполнителя Sade в секундах из таблицы выше. Обратите внимание: не перепутайте исполнителя Sade и исполнителя Sting. Имя переменной выберите самостоятельно, но следуйте правилам хорошего стиля: например, начинайте название с маленькой (строчной) буквы. Выведите значение переменной на экран функцией print().

sade_time_sec = 322# объявите переменную здесь
print(sade_time_sec)# выведите её значение на экран здесь

322

 1.5 Знакомство с данными.

Задание 1

Посчитайте долю носителей английского (native_speakers) от общего числа владеющих этим языком (total_speakers). Результат сохраните в переменной native_speakers_part. Выведите на экран её значение.

native_speakers = 378.2
total_speakers = 1121
native_speakers_part = native_speakers / total_speakers# напишите ваш код здесь
print (native_speakers_part)

Задание 2

Посчитайте, сколько выучивших японский язык как иностранный приходится на одного владеющего этим языком?
Результат выведите на экран.

jap_total_speakers = 128.3
jap_native_speakers = 128.2
print ((jap_total_speakers - jap_native_speakers)/ jap_total_speakers) #напишите ваш код здесь

Задание 3

Из прошлых уроков вы знаете, что первый фильм в истории человечества вышел на экраны в январе 1896 года. Эту дату можно считать годом рождения кинематографа (хоть и сняли эту короткометражку в 1895 году). Посчитайте, сколько лет исполнилось кинематографу в 2020 году. Результат выведите на экран.

first_movie_year = 1896
target_year = 2020
print (target_year - first_movie_year) # напишите ваш код здесь

 1.6 Арифметические операции.

 1.7 Арифметические данные и обработка ошибок.

jap_total_speakers = 0
jap_native_speakers = 128.2
try:
    print((jap_total_speakers - jap_native_speakers) / jap_total_speakers)
except:
    print('Деление на ноль!')

 1.8 Типы данных.

Задание 1

Создайте переменную de_website_part, хранящую долю сайтов на немецком языке в рейтинге 10 млн самых популярных сайтов. Какой это тип данных? Проверьте своё предположение: выведите на экран тип объекта из переменной de_website_part.

de_website_part = 0.06 # напишите код здесь
print (type(de_website_part))

Задание 2

Выведите на экран типы переменных chi_language и chi_total_speakers на отдельных строчках.

chi_language = 'китайский'
chi_total_speakers = 1107
# напишите код здесь
print (type(chi_language))
print (type(chi_total_speakers))

Задание 3

Перед вами программа, вычисляющая количество сайтов на русском языке в списке из 10 млн самых популярных сайтов в мире. В переменной russian_web_part мы сохранили долю русского языка в этом списке, а в переменной web_popular — количество сайтов, то есть 10 млн. Затем мы перемножили их в переменной russian_web_popular. Каким будет тип объекта в russian_web_popular? Выведите на экран сначала значение, затем тип переменной russian_web_popular на разных строчках.

russian_web_part = 0.061
web_popular = 10000000
russian_web_popular = web_popular * russian_web_part
# напишите код здесь
print(russian_web_popular)
print(type(russian_web_popular))

 1.9 Преобразование типов.

eng_total_speakers = '1121abc'
print(int(eng_total_speakers)) 

Задание 2

Преобразуйте значение переменной fra_total_speakers из типа str в тип float. Для этого примените функцию float() и поместите результат в ту же переменную. Определите тип объекта после преобразования функцией type() и выведите результат на экран.

fra_total_speakers = '284.9'
# напишите код здесь
fra_total_speakers = float(fra_total_speakers)
print(type(fra_total_speakers))

 1.10 Заключение.

favorite_character = 'Дмитрий Нагиев'# 'напишите имя персонажа вместо комментария'
#напишите ваш код здесь
print(len(favorite_character))
poetry = '''Белая берёза
Под моим окном
Принакрылась снегом,
Точно серебром.

На пушистых ветках
Снежною каймой
Распустились кисти
Белой бахромой.
'''
#выведите значение переменной на экран
print(poetry)

 1.11 Проверочные задания. Переменные и типы данных. Вывод данных.

 

2. Строки.

Вернуться в Начало статьи

 2.1 Введение.

 2.2 Строки в Python/

 2.3 Индексы.

Задание 1

С помощью неотрицательного индекса выведите на экран символ e из строки в переменной word.

word = 'привет'
print(word[4]) #напишите ваш код здесь
word = 'привет'
print(word[-2])#напишите ваш код здесь

 2.4 Срезы.

word = 'sentence'
# напишите ваш код здесь
print (word[3:6])
string = 'abracadabra'
#напишите ваш код здесь
print(string[0:5])

 2.5 Операции над строками.

print('I will not sleep through my education\n' * 100)

Задание 2

Сложите строку start с одной из переменных: first_choice, second_choice, third_choice — на ваш выбор. Обратите внимание, что складывать нужно именно с переменной, а не явно повторять строку, которая в ней хранится. Результат сложения сохраните в переменную с именем result. Тогда функция print() выведет строку-результат на экран.

start = 'Мне бы хотелось отправиться в '
first_choice = 'Париж'
second_choice = 'Рим'
third_choice = 'Нью-Йорк'
# напишите ваш код здесь
result = start + second_choice
print(result)

 2.6 Методы строк.

phrase = 'Чтобы закончить этот курс, нужна лень'
phrase = phrase.replace('лень','дисциплина') # замените подстроку здесь
print(phrase) # выведите значение переменной на экран здесь
word = 'DaTa ScIeNtIsT'
word_to_lower = word.lower() # приведите к нижнему регистру здесь
print(word_to_lower) # выведите значение переменной word_to_lower на экран здесь

 Задание 3

quote = 'Праздновать успех — это хорошо, но более важно извлекать уроки из неудач'
ind = quote.find('уроки') # напишите ваш код здесь
print(ind)

2.7 F - строки.

Задание 1

С помощью правил f-строк выведите на экран строку: Эйфелева башня находится в Париже, и её высота составляет 300 метров. Название города и высоту вставьте в строку из переменных 'city' и "height".

city = 'Париж'
height = 300
print(f'Эйфелева башня находится в {city}е, и её высота составляет {height} метров.') # измените эту строчку
place = 'Театр-музей'
last_name = 'Дали'
location = 'Каталония'
print('{0} художника {1} находится в автономном сообществе {2}.'.format(place,last_name,location)) # измените эту строчку

 2.8 Заключение.

Шпаргалка темы

 2.9 Проверочные задания. Строки.

3.  Списки.

Вернуться в Начало статьи

 3.1 Введение.

 3.2 Списки - основы.

Задание 1

В переменную duration запишите первые пять значений из столбца «Продолжительность (мин)»: 142, 175, 152, 195, 201. Выведите на экран содержимое переменной.

duration = [142,175,152,195,201] #сление значений
print(duration) 
first_row = ['Побег из Шоушенка','США',1994,'драма',142,9.111] #создайте список здесь
print(first_row) #напечатайте список здесь

 3.3 Индексы и срезы.

second_row = ['Крёстный отец', 'США', 1972, 'драма, криминал', 175, 8.730]
country = second_row[1] # напишите ваш код здесь
print (country) #выведите на экран здесь

Задание 2

Получите срез значений:
начало среза — год выпуска, 1972;
конец — продолжительность, 175.
Сохраните срез в переменную movie_slice.

second_row = ['Крёстный отец', 'США', 1972, 'драма, криминал', 175, 8.730]
movie_slice = second_row[2:5] #напишите ваш код здесь
print(movie_slice)

 3.4 Добавление и удаление элементов.

Задание 1

В списке stalker_info — данные о фильме «Сталкер». Но не хватает значений из последних трёх колонок: жанр — 'фантастика, драма, детектив', продолжительность — 163, рейтинг — 8.083. Добавьте эти значения в список методом extend() в том же порядке. Результат выведите на экран.

stalker_info = ['Сталкер', 'СССР', 1979]
stalker_info.extend(['фантастика, драма, детектив',163,8.083]) # используйте метод extend() здесь
print(stalker_info) # выведите список на экран здесь

 3.5 Сложение и умножение списков.

Задание 1

Сложите два списка в том же порядке, в котором они объявлены. Складывайте именно переменные first_part и second_part. Сохраните результат в переменной movie_info и выведите на экран её содержимое.

first_part = ['Криминальное чтиво', 'США', 1994]
second_part = ['триллер, комедия, криминал', 154, 8.619]
movie_info = first_part + second_part # создайте переменную movie_info здесь
print (movie_info) # здесь выведите получившийся список movie_info на экран

 Задание 2

zeros = [0]
zeros = zeros * 100 #напишите ваш код здесь
print (zeros)

3.6 Сортировка.

movies = ['Хороший, плохой, злой', 'Криминальное чтиво', 'Бойцовский клуб', 'Харакири', 'Сталкер']
movies.sort() # отсортируйте список здесь
print(movies) # выведите список на экран здесь
movies_duration = [142, 175, 152, 195, 201, 154, 178, 139]
movies_duration.sort(reverse=True) # отсортируйте список здесь
print(movies_duration) # выведите список на экран здесь
movies_duration = [142, 175, 152, 195, 201, 154, 178, 139]
movies_duration_sorted = sorted(movies_duration, reverse=True) # напишите ваш код здесь
print(movies_duration_sorted) # напечатайте получившийся список здесь

 3.7 Поиск элементов.

 3.8 Списки и строки.

phrase = 'Aladdin#Esmeralda#Hercules#Mulan'
words = phrase.split('#') #напишите ваш код здесь
print(words)

 3.9 Заключение.

Шпаргалка темы:

https://code.s3.yandex.net/data-analyst/praktikum_data_analysis_takeaways_basicPython_theme3.pdf.

3.10 Проверочные задания. Списки.

4. Цикл 'for'

Вернуться в Начало статьи

 4.1 Введение.

 4.2 Понятие цикла. Перебор элементов списка.

duration_list = [142, 175, 152, 195]
for i in duration_list:# напишите цикл for здесь
    print(i)

 4.3 Перебор элементов списка. Функция range()

Задание 1

Инопланетяне оставляют загадочные послания каждый день. Помогите им: напечатайте сообщение ALIENS на экране 100 раз с помощью цикла for.

for i in range(100): 
    print('ALIENS') # напечатайте ваш код здесь
movies_duration = [142, 175, 152, 195, 201]
for i in range(len(movies_duration)): # напишите ваш код здесь
    movies_duration[i] += 2
print(movies_duration)

 4.4 Циклы и встроенные функции для обработки списков.

Встроенная функция max(), min():

movies_duration = [142, 175, 152, 195, 201, 154, 178, 139, 133, 163, 136]
max_duration = max(movies_duration)
print (max_duration) 
marks = [90, 85, 83, 92]
total = sum(marks) # напишите ваш код здесь
print(total)

 4.5 Обработка списков с помощью циклов. Продолжение.

number = 10
fact = 1 # присвойте начальное значение
# напишите цикл
for i in range(1,number+1):
    fact *= i
print (fact)
import math
number = 10
fact = math.factorial(number) # напишите ваш код здесь
print(fact)

 4.6 Заключение

Шпаргалка темы.

https://code.s3.yandex.net/data-analyst/praktikum_data_analysis_takeaways_basicPython_theme4.pdf

 4.7 Проверочные задания. Цикл for