Библиотеки Python

Задания по теме Библиотеки Python для лабораторных занятий

1. Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных и прописных латинских букв и цифр, кроме тех, которые легко перепутать между собой: «l» (L маленькое), «I» (i большое), «1» (цифра), «o» и «O» (большая и маленькая буквы) и «0» (цифра).
Решение должно содержать две функции: вспомогательную generate_password(m), возвращающую случайный пароль длиной m символов, и основную main(n, m), возвращающую список из n различных паролей, каждый длиной m символов. Будем считать, что параметры n и m всегда таковы, что требуемые пароли возможно сгенерировать.

2. В условиях предыдущей задачи учтите  дополнительное условие — в каждом из паролей не должно быть повторяющихся символов.

3. В файле image.jpg лежит изображение. Зеркально отразите его относительно центральной вертикальной оси. Для этого напишите функцию mirror(), в которой прочитайте изображение из файла image.jpg, преобразуйте его и сохраните в файл res.jpg.

4. Напишите функцию gradient(color), создающую графический файл с плавным переходом цвета. Файл должен содержать прямоугольник длиной 512 пикселей (по 2 пикселя на каждый оттенок) и высотой 200 пикселей. В функцию передается обозначение цвета, градиент которого надо построить. Варианты цветов: R, G и B. Обозначение может быть введено в любом регистре.

5. Напишите функцию chip_and_dale(number), которая сможет монозвуковой файл с любой речью переделать так, чтобы казалось, что слова произносит герой Чип мультфильма  «Чип и Дейл». Для этого надо ускорить воспроизведение. В функцию передаётся натуральное число i из диапазона [2..5]. Необходимо прочитать файл in.wav, оставить каждый i-ый фрейм и сохранить результат в файле out.wav

6. Дан отрывок из литературного произведения. Выведите через пробел десять существительных, которые встречаются в тексте чаще всего. Существительные нужно поставить в начальную (нормальную) форму и отсортировать по убыванию частоты их встречи в тексте. Если два существительных встречаются с одинаковой частотой, то их надо расположить в обратном лексикографическом порядке.

Самое важное: правильным существительным мы будем считать такое существительное (NOUN), у которого параметр score больше 0.5.

Формат ввода: Текст, вводимый произвольным образом. Для его чтения необходимо воспользоваться sys.stdin. Слова могут быть разделены пробелами, символами табуляции и переводами строк.

Формат вывода: 10 существительных в начальной форме через пробел.

7. Напишите программу, которая принимает на вход слово и, если оно существительное, изменяет его по падежам и числам.
Иначе – выводит сообщение «Не существительное».

import pymorphy2
 
morph = pymorphy2.MorphAnalyzer()
a = input()
word = morph.parse(a)[0]
if 'NOUN' in word.tag.POS:
    print('Единственное число:')
    print('Именительный падеж:', word.inflect({'nomn'}).word)
    print('Родительный падеж:', word.inflect({'gent'}).word)
    print('Дательный падеж:', word.inflect({'datv'}).word)
    print('Винительный падеж:', word.inflect({'accs'}).word)
    print('Творительный падеж:', word.inflect({'ablt'}).word)
    print('Предложный падеж:', word.inflect({'loct'}).word)
    print('Множественное число:')
    print('Именительный падеж:', word.inflect({'nomn', 'plur'}).word)
    print('Родительный падеж:', word.inflect({'gent', 'plur'}).word)
    print('Дательный падеж:', word.inflect({'datv', 'plur'}).word)
    print('Винительный падеж:', word.inflect({'accs', 'plur'}).word)
    print('Творительный падеж:', word.inflect({'ablt', 'plur'}).word)
    print('Предложный падеж:', word.inflect({'loct', 'plur'}).word)
else:
    print('Не существительное')

8. Ваш классный руководитель попросил помочь ему в подготовке мероприятия к празднику 8 марта. Вам нужно подготовить приглашения для ваших одноклассниц в документе Word, для каждой – на отдельной странице. На вход вашей программы подаются данные: место проведения, время мероприятия, а затем ФИО приглашённых девочек (количество строк заранее неизвестно).

import docx as doc
import sys

place = "Place : " + input("Place : ")
time = "Time : " + input("Time : ")
names = []
for i in sys.stdin:
    names.append(i.rstrip('/n'))
document = doc.Document()
for i in names:
    document.add_heading('ПРИГЛАШЕНИЕ', 0)
    document.add_heading('Дорогая ' + i + ", приглашаем тебя", level=1)
    p = document.add_paragraph(place)
    p = document.add_paragraph(time)
    document.add_paragraph('С 8 Марта!')
    document.add_page_break()
document.save('HEllo.docx')

9. Сформируйте презентацию PowerPoint в формате pptx, в которой рассказывается о преимуществах языка Python (не менее 3).
Каждое преимущество должно быть размещено на отдельном слайде.

10.  Сформируйте документ Excel, в котором по поданным на вход данным строится круговая диаграмма.

Формат ввода. Несколько строчек, в каждой — название параметра и его числовое значение (целое число), разделённые пробелом.
Питание 1200
Развлечения 1500
Учеба 300
Лечение 100
Прочее 670

import xlsxwriter
 
workbook = xlsxwriter.Workbook('res.xlsx')
worksheet = workbook.add_worksheet()
data = []

for i in range(5):
    x = input().split()
    worksheet.write(i, 0, x[0])
    worksheet.write(i, 1, x[1])
    data.append(x[1])
    
chart = workbook.add_chart({'type': 'pie'})
chart.add_series({
    'categories': '=Sheet1!A1:A5', 
    'values': '=Sheet1!B1:B5'})
chart.set_style(2)
worksheet.insert_chart('C3', chart)
 
workbook.close()
Поделиться:
  • Добавить ВКонтакте заметку об этой странице
  • Мой Мир
  • Facebook
  • Twitter
  • LiveJournal
  • FriendFeed
  • В закладки Google
  • Google Buzz
  • Яндекс.Закладки
  • StumbleUpon
  • Technorati
  • БобрДобр
  • Memori.ru
  • МоёМесто.ru

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.