Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 November 20

ЕМ

Егор Михайловский... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
text.bind('<Control_L>', press_control)
https://www.tcl.tk/man/tcl8.6/TkCmd/keysyms.htm

а ctrl+c/v в текстовом поле и так работают. по крайней мере у меня
спасибо за ссылку вроде бы разобрался
источник

M

Maikl in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Dingo 96
Почитал ошибку, пишет что не найден элемент 'string'. Но я чет не могу додумать
Strinng - это зарезервированное слото, это тип данных строка.
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Maikl
Strinng - это зарезервированное слото, это тип данных строка.
в python str
источник

M

Maikl in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Спорить не буду, но в моей практике такое было.
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Vadim Alexandrin
Приветствую! Делаю 3-ю лабу, сломал мозг на последней задаче. Подскажите плиз, как реализовать расчет угла отражения от стенок и других объектов?  И нужно ли его рассчитывать? Идея была  двигать объекты forward'ом, потом, при достижении стенок, функцией поворачивать на определенный угол и снова вперед forward'ом. Но расчет угла получается слишком замороченный. Также пробовал goto, но там были сложности с задачей разных направлений для разных объектов. http://cs.mipt.ru/python/lessons/lab3.html
#вопрос лаба 3
Нарисовать картинку , и повторить элементы нарисованне в ней . Картинку нарисовал , какие-то элементы пришлось переносить на surface для того чтобы повернуть эти элементы, но не как не могу понять как мне полностью копировать и изменять размеры того элемента который нужно повторить , в разных размерах , думал можно создать поверхность surface  и потом эту поверхность изменять , но внутри элементы не меняют свой размер . Как поступить? Неужели нужно создавать кучу объектов с параметрами размера и местоположения , и менять эти объекты , подскажите
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Тобишь вот мой код :
import pygame as py
from pygame.draw import *

def window(size,location,n):
   surface_window = py.Surface( (size) )

   color_window = 0, 191, 255

   rect( surface_window, (color_window), ( 10,10,80, 100) )
   rect( surface_window, (color_window), (100,10,80, 100) )

   rect( surface_window, (color_window), (10, 130, 80, 140) )
   rect( surface_window, (color_window), (110, 130, 80, 140) )

   win.blit( surface_window, (location) )

def koshka(n):


    #ХВОСТ КОШКИ С ПОВОРОТОМ
   surface_tail = py.Surface( (320, 100) )  # создание поверхности
   surface_tail.fill((222,184,135))

   ellipse( surface_tail, (150, 75, 0), (0, 0, 300, 100) )  # хвост

   ellipse( surface_tail, (0, 0, 0), (0, 0, 300, 100), 2 )  # хвост 2 для обводки
   surface_tail = py.transform.rotate( surface_tail, 160 )  # поворачивание поверхности с хвостом
   win.blit( surface_tail, (340, 460) )  # нанесение поверхности на окно

   # туловище кошки
   ellipse( win, (150, 75, 0), (50, 410, 400, 200)  )
   ellipse( win, (0, 0, 0), (50, 410, 400, 200), 2 )

   circle( win, (150, 75, 0), (370, 570), 60 )
   circle( win, (0, 0, 0), (370, 570), 60, 2 )

   ellipse( win, (150, 75, 0), (400, 600, 40, 100) )
   ellipse( win, (0, 0, 0), (400, 600, 40, 100), 2 )

   ellipse( win, (150, 75, 0), (80, 570, 80, 50) )
   ellipse( win, (0, 0, 0), (80, 570, 80, 50), 2 )

   ellipse( win, (150, 75, 0), (50, 500, 50, 80) )
   ellipse( win, (0, 0, 0), (50, 500, 50, 80), 2 )

   # голова кошки

   circle( win, (150, 75, 0), (90, 490), 80 )
   circle( win, (0, 0, 0), (90, 490), 80, 2 )




py.init()
FPS = 20
win = py.display.set_mode((600,800))

clock = py.time.Clock()
finish = False

# ФОН
rect(win,(180,69,19),(0,0,600,400))
rect(win,(222,184,135),(0,400,600,400))


# ОКНО в функции

window((200, 300),(350, 50),0)
window((200, 300),(100, 50),100)





koshka(1)


py.display.update()

while not finish:
   for event in py.event.get():
       clock.tick(FPS)
       if event.type == py.quit:
           finish = True
py.quit()
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Вот кошку то я нарисовал правда без ушей, а вот как эту кошку копировать и повторять изменяя ее размеры ? Заранее благодарю за ответ .
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
как рза на примере кошки было тут, разбирал.
но библиотека другая.
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
https://t.me/tkhirianov_python_2019/13734 - зеркалирование
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
https://t.me/tkhirianov_python_2019/30697 масштабирование
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Сорри )) Зачем в exel ?)))))

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

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
arnold
Сорри )) Зачем в exel ?)))))

В голосовом я сказал что жаль что нельзя кошку нанести на поверхность и потом менять масштаб и местоположение поверхностей , думал можно так , это бы сильно сократило код . С вашего ответа я понял что нужно влиять на масштаб и местоположение каждого примитива , спасибо за ответ .
да. возможно в pygame для этого всего существуют простые методы, но в задаче на алгоритмы, как раз вот подходы: к разбиение на функции, модули. эволюцию программки.
1. рисуем одну кошку, влоб указывая примитивы и их свойства, координаты.
2. выносим кошку в отдельную функцию, в которую передаём координаты одной точки, а остальные оно вычислит само.
3. добавляем функционал, например цвет.
4. добавляем фунционал размер, добавляя какой-то коэфициент.
5. добавляем функционал флажок - отражение по горизонтали - добавляя в какие-то места коэффициент минус 1
источник

F

Fun in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ребят, подскажите пожалуйста, есть ли видео у Тимофея Ф. где затрагивается тема Мемоизации, чет я вообще прочитав не могу разобраться что происходит.
источник

F

Fun in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
На кодварс наткнулся на задачу с рекурсивной функцией, вроде как с помощью мемоизации можно ее оптимизировать.
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
да. возможно в pygame для этого всего существуют простые методы, но в задаче на алгоритмы, как раз вот подходы: к разбиение на функции, модули. эволюцию программки.
1. рисуем одну кошку, влоб указывая примитивы и их свойства, координаты.
2. выносим кошку в отдельную функцию, в которую передаём координаты одной точки, а остальные оно вычислит само.
3. добавляем функционал, например цвет.
4. добавляем фунционал размер, добавляя какой-то коэфициент.
5. добавляем функционал флажок - отражение по горизонтали - добавляя в какие-то места коэффициент минус 1
Вот теперь догнал
источник

a

arnold in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Большое спасибо, это что то больше чем если бы дали код
источник
2020 November 21

N

N0ne32 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Переслано от N0ne32
Помогите с ботом плиз, не выдает реквизиты @BK_WR_BOT
источник