У меня выходит ошибка помогите

Рейтинг: -2Ответов: 2Опубликовано: 24.05.2023

Ошибка:

Traceback (most recent call last):
File "C:\Users\Asus\Desktop\Програмирование\Tkinter\Приложение\main.py", line 2, in <module>
    from PIL import ImageTk
File "C:\Users\Asus\AppData\Local\Programs\Python\Python311\Lib\site-packages\PIL\ImageTk.py", line 31, in <module>
    from . import Image
File "C:\Users\Asus\AppData\Local\Programs\Python\Python311\Lib\site-packages\PIL\Image.py", line 36, in <module>
    import tempfile
File "C:\Users\Asus\AppData\Local\Programs\Python\Python311\Lib\tempfile.py", line 45, in <module>
    from random import Random as _Random
File "C:\Users\Asus\Desktop\Програмирование\random.py", line 7, in <module>
    num=random()*8
        ^^^^^^^^
TypeError: 'module' object is not callable

А вот сам код:

from tkinter import *
from PIL import ImageTk
root=Tk()
root.geometry("600x800")
im=ImageTk.PhotoImage(file="Fortnite_S1.png")
btn=Button(root, image=im, height=5, width=4)
btn.grid
root.mainloop()

Ответы

▲ 0

Ошибка возникла из-за того, что вы создали файл с именем random.py, что привело к тому, что импортированный модуль random ссылается на ваш файл random.py, а не на оригинальный модуль random.

Вам нужно переименовать файл random.py во что-то другое, например, my_random.py. После этого вы должны снова импортировать модуль random в своем коде.

▲ -1

Вы целый модуль (файл, библиотека) пытаетесь вызвать как функцию, вызовите у этого модуля какой-нибудь метод, напимер, random.randint(); random.choice(). В Вашем случае можно попробовать random.random() - возвращает случайное число от 0 до 1. Это судя из ошибки, а вот что в коде не так, я не знаю, попробуйте библиотеки переустановить. А еще вы забыли скобки - btn.grid()