|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
最近在用python写一个文字rpg游戏
但是写完初始框架后才发现一个问题
我的main就一句话
然后其他所有的操作均由各种函数完成
但是由于游戏的原因
我在其中运用了大量的递归
例如
- #主操控面板
- def main_panel():
- print('\n%s,你现在正处在%s。' % (leading_main.name,leading_main.place))
- print('【1】查看属性')
- print('【2】查看背包')
- print('【3】查看队伍\n')
- map_activity('print',leading_main.place)
- choose = input('\n【0】退出游戏\n请做出选择:')
- if(choose == '0'):
- sys.exit(0)
- elif(choose == '1'):
- inspect_attribute(choose)
- elif(choose == '2'):
- inspect_package(choose)
- else:
- map_activity(choose)
- print('----------------------------------------------------------------')
- main_panel()
复制代码
我设定的递归函数全是无返回值的
但是据我所知递归的原理
在下一层的函数没有进行完时
上层的函数就会一直等待返回值
还有python的递归锁的问题
这是否会导致这个游戏会占用大量的内存
并且会突然被锁死闪退
如果会,那就只有把递归函数转化成主函数里无限循环这一种办法能解决吗? |
|