Уведомления

Группа в Telegram: @pythonsu

Уведомления

  • Found 3471 posts.

Центр помощи » Black jack в Telebot » Май 30, 2022 10:10:05

Решил что друзья должи решать спор в играх, решил создать минимального игрового бота
И я не понимаю где ошибся
  
@bot.message_handler(commands=["bj"])
def bj(m, res=False):
    card = 0
    bot.send_message(m.chat.id, "Хотите взять карту?")
    if m.text == "Взять карту":
        card += random.randint(3, 11)
        bot.send_message(m.chat.id, f"Пользователь {m.from_user.first_name} взял карту, у него {card}.")
        if m.text == "Взять ещё одну":
            card += random.randint(3,11)
            bot.send_message(m.chat.id, f"У пользователя {m.from_user.first_name} {card} в сумме.")
        elif card > 21:
            bot.send_message(m.chat.id, f"Увы... {m.from_user.first_name} у вас {card} в сумме, перебор.")
        elif card == 21:
            bot.send_message(m.chat.id, f"Ого, у игрока {m.from_user.first_name} 21 очко!")
        elif m.text == "Хватит":
            bot.send_message(m.chat.id, f"Игрок {m.from_user.first_name} решил закончить игру на {card}.")
    elif m.text == "Хватит":
        bot.send_message(m.chat.id, f"Игрок {m.from_user.first_name} решил закончить игру не начав")
Не понимаю что именно написать, чтоб он реагировал, буду благоден за помощь.

Python для экспертов » IP - адресация. Помогите пожалуйста » Май 26, 2022 12:39:17

Эту херню надо написать на питоне

Для узла с IP-адресом 48.95.137.38 адрес сети равен 48.95.128.0. Найдите наименьшее
возможное количество единиц в двоичной записи маски подсети.

Буду благодарен!

Центр помощи » определение чисел с чётными делителями » Май 22, 2022 21:11:59

Напишите программу, которая ищет среди целых чисел,
принадлежащих числовому отрезку (5; 16) такие числа, которые
имеют все четные делители.
Помогите, пожалуйста!

Python для новичков » Подскажите пож-ста, верно ли решил задачку? » Май 22, 2022 18:06:58

namea=input(“введите название 1 партии:”)
a=float(input(“укажите число проголосовавших:”))
nameb=input(“введите название 2 партии:”)
b=float(input(“укажите число проголосовавших:”))
namec=input(“введите название 3 партии:”)
c=float(input(“укажите число проголосовавших:”))
da+b+c)/450;
e=a/d;
z=b/d;
f=c/d;
print (“места в партии ” + namea + “ = ”+str(e))
print (“места в партии ” + nameb +“ = ”+str(z))
print (“места в партии ” + namec +“ = ”+str(f))

Условие задачи:
Статья 83 закона “О выборах депутатов Государственной Думы Федерального Собрания Российской Федерации” определяет следующий алгоритм пропорционального распределения мест в парламенте.

Необходимо распределить 450 мест между партиями, участвовавших в выборах. Сначала подсчитывается сумма голосов избирателей, поданных за каждую партию и подсчитывается сумма голосов, поданных за все партии. Эта сумма делится на 450, получается величина, называемая “первое избирательное частное” (смысл первого избирательного частного - это количество голосов избирателей, которое необходимо набрать для получения одного места в парламенте).

Далее каждая партия получает столько мест в парламенте, чему равна целая часть от деления числа голосов за данную партию на первое избирательное частное.

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

На вход программе подается список партий, участвовавших в выборах. Каждая строка входного файла содержит название партии (строка, возможно, содержащая пробелы), затем, через пробел, количество голосов, полученных данной партией – число, не превосходящее 10 в степени 8.

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

Python для новичков » Ошибка Memory Error » Май 20, 2022 03:07:26

Есть метод для формирования архива из txt фалов. Список self.file_list может состоять из 300 файлов каждый файл по 512кб

 def _create_archive(self):
        bt = BytesIO()
        zip = zipfile.ZipFile(bt, 'w', zipfile.ZIP_DEFLATED)
        for item in self.file_list:
            zip.writestr('{}.txt'.format(str(item.Name())), item.Data())
        zip.close()
        bt.seek(0)
        resulting_file = ResultingFile()
        resulting_file.SetName('ARCHIVE_NAME')
        resulting_file.SetData(bt.getvalue())
        bt.close()
        return resulting_file

При формировании этого архива в строке resulting_file.SetData(bt.getvalue()) падает через раз ошибка
Memory Error, ResultingFile:SetData: Unable to write content of vector to ResultingFile.
Есть какие-нибудь советы по оптимизации кода формирования архива?

Python для новичков » Python Tkinter Не могу разобраться » Май 18, 2022 20:32:47

В общем столкнулся с проблемой при написании кода, суть в том что при указании в Spinboxе номера и нажатии кнопки создаются поля entry на пример при цифре 1 создаются 2 поля, при цифре 2 создаются 4 поля и тд… Но я хочу сделать так чтобы если пользователь ошибся и указал сначала цифру два и нажал кнопку(создается 4 поля), то, чтобы он мог нажать цифру 1(создается 2 поля), а лишние созданные поля при этом удалились
отрезок кода:
 from tkinter import *
window =Tk()
window.geometry('800x600') 
window.resizable(width=0, height=0) 
window.title("ddd") 
spinbox1= Spinbox(from_=1, to=2)
def start1():
    n=int(spinbox1.get())
    if n==1:
        label19=Label(text="Тощина")
        label20=Label(text="Тепло")
        label19.place(relx=.65,rely=.05)
        label20.place(relx=.8,rely=.05)
        entry1_1= Entry()
        entry1_1.place(relx=.65,rely=.09)
        entry1_2= Entry()
        entry1_2.place(relx=.82,rely=.09)
    if n==2:
        label19=Label(text="Тощина ")
        label20=Label(text="Тепло")
        label19.place(relx=.65,rely=.05)
        label20.place(relx=.8,rely=.05)
        entry1_1= Entry()
        entry1_1.place(relx=.65,rely=.09)
        entry1_2= Entry()
        entry1_2.place(relx=.82,rely=.09)
        entry2_1= Entry()
        entry2_1.place(relx=.65,rely=.14)
        entry2_2= Entry()
        entry2_2.place(relx=.82,rely=.14)
spinbox1.pack()
button=Button(command=start1)
button.pack()
window.mainloop

Python для новичков » object recognition on python » Май 17, 2022 19:24:09

hello! I am doing object recognition on python here is my code:
# encoding:utf-8
# Imageai download address: https://github.com/OlafenwaMoses/ImageAI
# Resnet50_coco_best_v2.1.0.h5 model download address: https://github.com/fizyr/keras-retinanet/releases/
from imageai.Detection import ObjectDetection # Imported ImageAI target detection class
import cv2
import os
os.environ = ‘2’
import matplotlib.pyplot as plt

def targetDetection(imgArray,model_path):

return

path = os.path.abspath(model_path)
detector = ObjectDetection() # Defined target detection class detector.setModelTypeAsRetinaNet() # Model type is set to RetinaNet.
detector.setModelPath(path) # Set model path to RetinaNet model path
detector.loadModel() # The target detection class into which the model is loaded. # Call the target detection function to analyze the input and output image paths.
detections = detector.detectObjectsFromImage(input_image=imgArray,
input_type='array',output_type='array')
return detections

data = plt.imread('zebra.jpg')
model_path = ('resnet50_coco_best_v2.0.1.h5')
imgInfo = targetDetection(data,model_path)
plt.imshow(imgInfo)
plt.show()
this code throws an error:
Traceback (most recent call last):
File “C:\Users\Daniel\PycharmProjects\object_detection\real_time_object_detection.py”, line 25, in <module>
plt.imshow(imgInfo)
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\_api\deprecation.py”, line 459, in wrapper
return func(*args, **kwargs)
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\pyplot.py”, line 2652, in imshow
__ret = gca().imshow(
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\_api\deprecation.py”, line 459, in wrapper
return func(*args, **kwargs)
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\__init__.py”, line 1412, in inner
return func(ax, *map(sanitize_sequence, args), **kwargs)
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\axes\_axes.py”, line 5481, in imshow
im.set_data(X)
File “C:\Users\Daniel\PycharmProjects\object_detection\venv\lib\site-packages\matplotlib\image.py”, line 706, in set_data
raise TypeError(“Image data of dtype {} cannot be converted to ”
TypeError: Image data of dtype object cannot be converted to float

Process finished with exit code 1
Please help me decide, thanks in advance

Python для новичков » доступ к GUI элементу из асинхронной функции » Май 15, 2022 15:00:25

Доброго всем! Есть асинхронная библа для работы с OPC-серверами. Работает нормально, но мне надо привязать ее работу к GUI (PySide2) для последующих манипуляций с элементами. Пример кода вычитывающий дерево opc-сервера:
 async def browse_node(node):
    try:
        children = await node.get_children()
        for child in children:
            ch_name = await child.read_browse_name()
            print('Child: ', ch_name.Name)
            await browse_node(child)
    except Exception:
        print('browsing failed')
async def connect(url):
    async with Client(url=url) as client:
        root = client.nodes.root
        qn = await root.read_browse_name()
        print('Root name: ', qn.Name)
        await browse_node(root)
        print('Children of root are: ', await root.get_children())
Тут я читаю дерево в консоль рекурсией, а нужно передать в qtreeview. Запускаю вычитывание по кнопке из GUI asyncio.run(connect(url_to_server)) Подскажите куда копать? Я только начал с питоном работать и не знаю как работать из асинхрона с главным потоком, думаю, если просто создавать внутри функции элементы дерева, будут краши

Python для новичков » Приложение намаз Sajdon на ткинтере » Май 15, 2022 14:39:34

Помогите дописать код!
Мне осталось сделать так чтобы чтобы когда время доходит до времени азана проигрывался азан(можно любую другую мелодию)

Вот код
from tkinter import*
import tkinter
import pyglet
import sys
import datetime
import time
from playsound import*
from datetime import date
from datetime import datetime


current_date = date.today()
ttime = time.strftime('%H:%M:%S')
def timing():
current_time = time.strftime(“%H : %M : %S”)
clock.config(text=current_time)
clock.after(200,timing)



root=Tk()
root.geometry(“400x600”)
root.configure(bg=“black”)
root.title(“Sajdon”)


clock=Label(root,font=“times 24 bold”, fg=“red”, bg = “black”)
clock.place(x=125, y = 250)
timing()

day=Label(root,text= current_date ,font=“times 24 bold”, fg=“white”, bg=“black”)
day.place(x=5, y = 25)
day=Label(root,text=“Буйнакск”,font=“times 18 bold”, fg=“white”, bg=“black”)
day.place(x=5, y = 0)

logo=Label(root,text=“Sajdon”,font=“times 24 bold”, fg=“red”, bg=“black”)
logo.place(x=290, y = 3)



#
fajr=Label(root,text=“Фаджр - 2:37”,font=“times 24 bold”, fg=“white”, bg=“black”)
fajr.place(x=105, y = 300)

voshod=Label(root,text=“Восход - 4:29”,font=“times 24 bold”, fg=“white”, bg=“black”)
voshod.place(x=105, y = 340)

zuhr=Label(root,text=“Зухр - 11:52”,font=“times 24 bold”, fg=“white”, bg=“black”)
zuhr.place(x=105, y = 380)

asr=Label(root,text=“Аср - 15:49”,font=“times 24 bold”, fg=“white”, bg=“black”)
asr.place(x=105, y = 420)

magrib=Label(root,text=“Магриб - 19:09”,font=“times 24 bold”, fg=“white”, bg=“black”)
magrib.place(x=105, y = 460)

isha=Label(root,text=“Иша - 20:40”,font=“times 24 bold”, fg=“white”, bg=“black”)
isha.place(x=105, y = 500)
#


root.mainloop()

Python для новичков » Поправить скрипт Размер файлов в каталоге. » Май 11, 2022 12:14:32

IDLE (Python 3.10 64-bit)
Win 10
—————————
Есть такой рабочий скрипт Catalog size:
 import os
import matplotlib.pyplot as plt
def get_size_format(b, factor=1024, suffix="B"):
    for unit in ["", "K", "M", "G", "T", "P", "E", "Z"]:
        if b < factor:
            return f"{b:.2f}{unit}{suffix}"
        b /= factor
    return f"{b:.2f}Y{suffix}"
def get_directory_size(directory):
    total = 0
    try:
        for entry in os.scandir(directory):
            if entry.is_file():
                total += entry.stat().st_size
            elif entry.is_dir():
                total += get_directory_size(entry.path)
    except NotADirectoryError:
        return os.path.getsize(directory)
    except PermissionError:
        return 0
    return total
def plot_pie(sizes, names):
    plt.pie(sizes, labels=names, autopct=lambda pct: f"{pct:.2f}%")
    plt.title("Размеры подкаталогов и файлов")
    plt.show()
folder_path = 'E:\IPTV\__Готовые m3u'
directory_sizes = []
names = []
for directory in os.listdir(folder_path):
    directory = os.path.join(folder_path, directory)
    directory_size = get_directory_size(directory)
    if directory_size == 0:
        continue
    directory_sizes.append(directory_size)
    names.append(os.path.basename(directory) + ": " + get_size_format(directory_size))
print("Общий размер каталога:", get_size_format(sum(directory_sizes)))
plot_pie(directory_sizes, names)

Как его поправить чтобы список и размеры файлов в квталоге сохранялись построчно в текстовый файл ?

Центр помощи » Прошу помочь с выполненинем самостоятельной работы » Май 9, 2022 01:47:19

 import os
from flask import Flask, request
from werkzeug.exceptions import BadRequest
app = Flask(__name__)
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
DATA_DIR = os.path.join(BASE_DIR, "data")
def build_query(it, teg, znachenie):
    res = map(lambda v: v.strip(), it)
    if teg == "filter":
        res = filter(lambda v, txt=znachenie: txt in v, res)
    if teg == "map":
        arg = int(znachenie)
        res = map(lambda v, idx=arg: v.split(" ")[idx], res)
    if teg == "unique":
        res = set(res)
    if teg == "sort":
        reverse = znachenie == "desc"
        res = sorted(res, reverse=reverse)
    if teg == "limit":
        arg = int(znachenie)
        res = list(res)[:arg]
    return res
@app.route("/perform_query")
def perform_query():
    try:
        teg1 = request.args["teg1"]
        teg2 = request.args["teg2"]
        znachenie1 = request.args["znachenie1"]
        znachenie2 = request.args["znachenie2"]
        file_name = request.args["file_name"]
    except KeyError:
        raise BadRequest
    file_path = os.path.join(DATA_DIR, file_name)
    if not os.path.exists(file_path):
        return BadRequest(description=f"{file_name} was not found")
    with open(file_path) as last:
        res = build_query(last, teg1, znachenie1)
        res = build_query(res, teg2, znachenie2)
        content = '\n'.join(res)
        print(content)
    return app.response_class(content, content_type="text/plain")
if __name__ == '__main__':
    app.run(debug=True)

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

Python для новичков » source в PyCharm 2021.3.3 » Май 5, 2022 23:16:16

Добрый день.
При попытке активировать виртуальную среду в встроенном Terminal PyCharm (2021.3.3) выходит ошибка:

PS D:\Dev\backend_test_homework\venv\scripts> source activate
source : Имя “source” не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути,
после чего повторите попытку.
строка:1 знак:1
+ source activate
+ ~~~~~~
+ CategoryInfo : ObjectNotFound: (source:String) , CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

Хотя команда проходит в Git Bash/

Что не так?

Центр помощи » Написание формулы с мат суммы » Май 4, 2022 12:17:37

помогите пожалуйста написать формулу на python

Python для новичков » Exception: Missing user_loader or request_loader » Май 3, 2022 15:02:32

Пытаюсь написать код для простой формы без базы данных где пользователи представлены в виде list of dictionaries. Флакс выдаёт ошибку что не хватает user_loader or request_loader

Не совсем понимаю как user_loader использовать если нет ID базы данных

 new_users = [
        {'new_username': 'admin1', 'new_code': 'pass1'},
        {'new_username': 'admin2', 'new_code': 'pass2'},
        {'new_username': 'admin3', 'new_code': 'pass3'}
    ]
@app.route("/")
@app.route("/login", methods=['POST', 'GET'])
def login():
    if current_user.is_authenticated:
        return redirect(url_for('booking'))
    form = LoginForm()
    if form.validate_on_submit():
        new_user = [a for a in new_users if a["new_username"] == form.new_username.data
                    and a["new_code"] == form.new_code.data]
        if new_user:
            login_user(new_user)
            next_page = request.args.get('next')
            return redirect(next_page) if next_page else redirect(url_for('login'))
        else:
            flash('Login Unsuccessful. Please check your name and the code', 'danger')
        return redirect(url_for('login'))
    return render_template('login.html', title='Login', form=form)

Network » Python + php. Передача данных из LMS Moodle в python-CGI скрипт, обработка и получение результата обратно в php. » Май 2, 2022 17:12:28

ОС - Windows 10.
Локальный сервер: Apache/2.4.53 (Win64) OpenSSL/1.1.1n PHP/7.4.28
python 3.10.4

В развёрнутой мной на локальном сервере LMS системе Moodle(платформе для обучения) есть инструмент загрузки файлов “filepicker”. Я хочу передать текст, полученный из инструмента filepicker ( загружает только .txt ), обработать его, получить данные обратно, и вывести (echo) на страницу.

Я выполнил var_dump($content); Так что это точно строка:

string(828) “……….my text here…………”

Ещё я точно знаю, что мой python-CGI скрипт работает, если я вручную буду вводить данные(делается через строку браузера - знак вопроса, имя переменной, = ввод данных):

http://localhost/speciallocation/local/tokenize/morgot.py?someamountoftext=Enter your text here

Вывод: ‘Enter’, ‘your’, ‘text’, ‘here’

Но, когда я нажимаю на кнопку submit, выводится только название моего файла, ввиду того, что я не отсылал его на обработку в CGI, а просто вывел его echo'м. Если просто вывести echo'м содержимое файла, это также даст результат.

Это наводит меня на мысль, что проблема где-то в части отправить\принять данные…..

Какие-нибудь мысли, народ?

Мой php код:

PHP:
 <?php
require_once(DIR . '/../../config.php');
require_once($CFG->dirroot . '/local/tokenize/classes/forms/tokenization.php');
$PAGE->set_url(new moodle_url('/local/tokenize/tokenization.php'));
$PAGE->set_context(\context_system::instance());
$PAGE->set_title(get_string('TOKENIZATOR', 'local_tokenize'));
$mform= new tokenization();
echo $OUTPUT->header();
 
if ($mform->is_cancelled()) {
    //Handle form cancel operation, if cancel button is present on form
} else if ($fromform = $mform->get_data()) {
  //In this case you process validated data. $mform->get_data() returns data posted in form.
 
  $name = $mform->get_new_filename('userfile');
  echo $name. '<br>';
 $content = $mform->get_file_content('userfile');
 //echo $content;
 var_dump($content);
 
  $morgot_link = "http://localhost/diplom/local/tokenize/morgot.py?someamountoftext=" . $content;
  $morgot_data = file_get_contents($morgot_link);
  echo $morgot_data;
 
} else {
  // this branch is executed if the form is submitted but the data doesn't validate and the form should be redisplayed
  // or on the first display of the form.
  //displays the form
  $mform->display();
}
echo $OUTPUT->footer();

Мой python CGI код:

Python:
 #!C:\Users\HP\AppData\Local\Programs\Python\Python310-32\python.exe
import os
import urllib.parse
import nltk
query_dict = urllib.parse.parse_qs(os.environ['QUERY_STRING'])
input_something = str(query_dict['someamountoftext'])[2: -2]
def tknz_wrd(someamountoftext):
    return(nltk.word_tokenize(someamountoftext))
print("Content-Type: text/html\n")
print (tknz_wrd(input_something))
morgot.py - Имя моего CGI python файла.

Дополнение: Я проверил ставится ли содержимое фала($content) в $morgot_link:

$morgot_link = "http://localhost/diplom/local/tokenize/morgot.py?someamountoftext=" . $content;
echo $morgot_link;

Да, вывод верный:

http://localhost/diplom/local/tokenize/morgot.py?someamountoftext=………..many text here………….

Это тем более наводит на мысль, что проблема в части “получить данные”($morgot_data = file_get_contents($morgot_link);

Также я не отрицаю, что могут быть какие-то ограничения\разрешения в Moodle на получение данных извне.

Python для новичков » Не могу установить библеотеку aiogram на Python. » Май 1, 2022 16:41:46

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for yarl
Failed to build aiohttp frozenlist yarl
ERROR: Could not build wheels for aiohttp, frozenlist, yarl, which is required to install pyproject.toml-based projects
Помогите пожалуйста

Флейм » Представляем Вашему вниманию быстрые и доступные виртуальные (VPS/VDS) и выделенные серверы. » Апрель 27, 2022 13:49:09

Представляем Вашему вниманию быстрые и доступные виртуальные (VPS/VDS) и выделенные серверы.


На выбор предоставлены стандартные AMD Epyc 3.0 ГГц серверы и мощные AMD Threadripper 3990X 4.3 ГГц.

Интернет-порт на всех виртуальных серверах предоставлен 10 Гбит/с.


Для установки доступны любые операционные системы:

•Windows10

•Windows Server 2012/2016/2019

•Debian

•CentOS

•Ubuntu

•любая ОС из своего ISO-образа


Цены одни из самых низких на рынке:

Цены на стандартные VPS/VDS начинаются от 355р/мес (или 0.82р/час)
Цены на High-CPU серверы 4.3 ГГц начинаются от 673р/мес (или 1.36р/час)
Цены на выделенные серверы начинаются от 4117р/мес


Наши преимущества


❯ Активация в течение 60 секунд после оплаты ❮

❯ Круглосуточная поддержка в чате 24/7/365 ❮

❯ Возможность почасовой оплаты от 0.82р/час ❮

❯ AntiDDoS-защита на всех серверах ❮



Доступные способы оплаты:

❯ Банковские карты любого мира (Visa/Mastercard/Мир и другие)

❯ ApplePay / GooglePay

❯ Криптовалюта (Bitcoin, Litecoin, Dogecoin, BTC Cash, USDT и другие)

❯ Электронные кошельки (ЮMoney, QIWI, PerfectMoney и другие)


Список всех тарифов и автоматический заказ на сайте: https://aeza.net

Покупайте, тестируйте! Вам понравится.


Наш Telegram - https://t.me/aezahost

Наш VK - Хостинг Aéza | ВКонтакте - https://vk.com/aezahost

Круглосуточный саппорт в ТГ - Aéza Support - https://t.me/aezasupport


Остались вопросы? Напишите нам: TG @aezasupport

Центр помощи » Помогите плиз, turtle  » Апрель 24, 2022 14:53:59

Сделайте импорт модуля turtle

1. Выполните следующие задачи:

- цвет фона холста должен быть светло-синий;

- цвет первой черепахи должен быть зеленого цвета;

- форма первой черепахи должна быть - square;

- ширина следа первой черепахи должна быть - 7;

- укажите произвольные параметры размера первой черепахи.



2. Напишите функции для первой черепахи, которые будут:

- запрашивать у пользователя текстовой ввод до тех пор, пока он/она не введет STOP, пустое поле или другой текст НЕ равный hexagon или rhombus;

- если пользователь ввел в окно запроса STOP - прекратить запрашивать текстовой ввод данных и вывести на холст надпись: Hello World !

- если пользователь ввел hexagon - то нарисовать шестиугольник; если пользователь ввел rhombus - то нарисовать ромб. Рисовать следующую фигуру рядом с предыдущей (фигуры не должны накладываться друг на друга);

- после отрисовки, фигура должны быть залита цветом (цвет на выбор автора);

- при рисовании каждый из вышеуказанных фигур, скорость движения черепахи должна быть разная;

- фигуры должны стоять отдельно, без каких-либо связей (линий) между ними.



3. Создайте вторую черепаху (экземпляр класса Turtle()) и выполните следующие задачи:

- вторая черепаха должна появляться внизу первой черепахи (после завершения работы кода по первой черепахе);

- цвет второй черепахи должен быть фиолетового цвета;

- форма второй черепахи должна быть - turtle;

- ширина следа второй черепахи должна быть - 5;

- укажите произвольные параметры размера второй черепахи;



4. Напишите функции для второй черепахи, которые будут:

- запрашивать у пользователя текстовой ввод до тех пор, пока он/она не введет STOP, пустое поле или другой текст НЕ равный ellipse или triangle;

- если пользователь ввел в окно запроса STOP - прекратить запрашивать текстовой ввод данных и вывести на холст надпись: I am a turtle !

- если пользователь ввел ellipse - то нарисовать эллипс; если пользователь ввел triangle - то нарисовать треугольник. Рисовать следующую фигуру рядом с предыдущей (фигуры не должны накладываться друг на друга и на фигуры первой черепахи);

- после отрисовки, фигура должны быть залита цветом (цвет на выбор автора);

- при рисовании каждый из вышеуказанных фигур, скорость движения второй черепахи должна быть разная;

- фигуры должны стоять отдельно, без каких-либо связей (линий) между ними.

Python для новичков » Как сделать так, чтобы python открыл приложение во весь экран (чужое) » Апрель 24, 2022 13:37:56

Хочу написать бота для игры, но мне нужно, чтобы код открывал эту игру во весь экран, не могу найти библеотеку для этого

Python для новичков » Помогите плиз » Апрель 24, 2022 09:46:00

Сделайте импорт модуля turtle

1. Выполните следующие задачи:

- цвет фона холста должен быть светло-синий;

- цвет первой черепахи должен быть зеленого цвета;

- форма первой черепахи должна быть - square;

- ширина следа первой черепахи должна быть - 7;

- укажите произвольные параметры размера первой черепахи.



2. Напишите функции для первой черепахи, которые будут:

- запрашивать у пользователя текстовой ввод до тех пор, пока он/она не введет STOP, пустое поле или другой текст НЕ равный hexagon или rhombus;

- если пользователь ввел в окно запроса STOP - прекратить запрашивать текстовой ввод данных и вывести на холст надпись: Hello World !

- если пользователь ввел hexagon - то нарисовать шестиугольник; если пользователь ввел rhombus - то нарисовать ромб. Рисовать следующую фигуру рядом с предыдущей (фигуры не должны накладываться друг на друга);

- после отрисовки, фигура должны быть залита цветом (цвет на выбор автора);

- при рисовании каждый из вышеуказанных фигур, скорость движения черепахи должна быть разная;

- фигуры должны стоять отдельно, без каких-либо связей (линий) между ними.



3. Создайте вторую черепаху (экземпляр класса Turtle()) и выполните следующие задачи:

- вторая черепаха должна появляться внизу первой черепахи (после завершения работы кода по первой черепахе);

- цвет второй черепахи должен быть фиолетового цвета;

- форма второй черепахи должна быть - turtle;

- ширина следа второй черепахи должна быть - 5;

- укажите произвольные параметры размера второй черепахи;



4. Напишите функции для второй черепахи, которые будут:

- запрашивать у пользователя текстовой ввод до тех пор, пока он/она не введет STOP, пустое поле или другой текст НЕ равный ellipse или triangle;

- если пользователь ввел в окно запроса STOP - прекратить запрашивать текстовой ввод данных и вывести на холст надпись: I am a turtle !

- если пользователь ввел ellipse - то нарисовать эллипс; если пользователь ввел triangle - то нарисовать треугольник. Рисовать следующую фигуру рядом с предыдущей (фигуры не должны накладываться друг на друга и на фигуры первой черепахи);

- после отрисовки, фигура должны быть залита цветом (цвет на выбор автора);

- при рисовании каждый из вышеуказанных фигур, скорость движения второй черепахи должна быть разная;

- фигуры должны стоять отдельно, без каких-либо связей (линий) между ними.