Я новичок в Python и создаю программу в Maya, которая создает солнечную систему. Это часть моего кода, который вызывает проблемы (надеюсь, достаточно, чтобы понять). Первая функция определяет радиус планеты, а затем создает сферу соответственно. Вторая функция должна использовать переменную planetRadiusStr для определения радиуса Torus (ring). Однако planetRadiusStr определяется только в первой функции, поэтому я знаю, что мне нужно каким-то образом передать переменную между функциями. Однако я не могу заставить это работать. Может ли кто-нибудь помочь?Как передать переменные между функциями, использующими python в Maya?
def planetRadius():
planetRadiusStr = raw_input("Please enter the radius of the planet:")
if float(planetRadiusStr)<float(sunRadiusStr):
cmds.polySphere(radius=float(planetRadiusStr), n='planet1')
else:
print "Planet Radius must be less than Sun Radius"
planetRadius()
def planetRings():
ringsStr = raw_input("Would you like this planet to have a ring?").lower()
if str(ringsStr) == "yes":
cmds.polyTorus(r=float(planetRadiusStr)*2, sr=0.5, n='ring1')
cmds.scale(1,0.2,1)
elif str(ringsStr) == "no":
pass
else:
print "Please enter 'yes' or 'no'."
planetRings()
(я могу загрузить фотографию моего кода, если это будет легче читать.) Спасибо!
сделал это, казалось, сработало, но теперь просит меня raw_input («Хочешь, чтобы эта планета имела кольцо») дважды, даже когда ты отвечаешь «да». Любая идея почему? –
Я не смотрел ваши функции. Я ответил на ваш вопрос о том, как передать переменную в другую функцию. – taesu