Я пытаюсь запустить самоопределенную функцию, импортировав классы и методы из другого файла. Независимо от того, какие изменения я вношу в предыдущий файл, я продолжаю получать одно и то же сообщение об ошибке от pycharm. Кто-нибудь может мне помочь?
Фрагмент кода из первого файла:
import random
class Coin:
def __init__(self):
pass
def flip(self):
return random.choice(['heads', 'tails'])
class Dice:
def __init__(self):
pass
def roll(self):
return random.randint(1, 6)
class Player:
def __init__(self):
self.position = 0
def update_position(self, delta):
self.position += delta
def make_turn(self, coin, dice):
coin_toss = coin.flip()
dice_roll = dice.roll()
if coin_toss == 'heads':
movement = 1
else:
movement = -1
self.update_position(movement * dice_roll)
class Game:
def __init__(self, player, coin, dice):
self.player = player
self.coin = coin
self.dice = dice
pass
def play(self):
for i in range(20):
self.player.make_turn(self.coin, self.dice)
return self.player.position
Фрагмент из второго файла:
from randomwalk import Game
def startSimulation():
num_games = 100
position = 0
for i in range(num_games):
games = Game('Alex', 'heads', 3)
end_position = games.play()
position += end_position
average_position = position/num_games
print('Average position after'+ str(num_games)+ 'games(20 moves per game) is' + str(average_position))
startSimulation()
Сообщение об ошибке:
D:\Python\pythonProject\venv\Scripts\python.exe D:\Python\pythonProject\simulation.py
Traceback (most recent call last):
File "D:\Python\pythonProject\simulation.py", line 15, in
startSimulation()
File "D:\Python\pythonProject\simulation.py", line 9, in startSimulation
end_position = games.play()
^^^^^^^^^^^^
File "D:\Python\pythonProject\randomwalk.py", line 36, in play
self.player.make_turn(self.coin, self.dice)
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'make_turn'
Process finished with exit code 1
Подробнее здесь: https://stackoverflow.com/questions/791 ... bject-in-a
Невозможно запустить самоопределяемую функцию из-за ошибки при определении объекта класса в предыдущем файле Python. ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как использовать самоопределяемую цветовую палитру для компонентов DevExtreme?
Anonymous » » в форуме CSS - 0 Ответы
- 22 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как проверить, разбито ли приложение из -за фатальной ошибки при предыдущем забеге
Anonymous » » в форуме IOS - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как проверить, разбито ли приложение из -за фатальной ошибки при предыдущем забеге
Anonymous » » в форуме IOS - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Невозможно объявить переменную, потому что уже объявлено в предыдущем, если блок [дублировать]
Anonymous » » в форуме C# - 0 Ответы
- 1 Просмотры
-
Последнее сообщение Anonymous
-