Python,获取值的循环然后再次测试该值

时间:2015-11-16 18:38:39

标签: python

这是我第一次问这里。我试着寻找答案,但不确定如何说出我需要的东西,所以我决定问。

我正在为桌面角色扮演游戏的角色创建者工作。我想得到角色上一个职业的结果,这些结果在列表中,然后再次测试该值以获得之前的职业。

我已经有了获得第一个职业的方法,然后将其与文本数据库进行比较,条目如下:

船长,资源管理员,骑士,警长,

船长是第一职业,逗号标志着可能以前职业的开始和结束。我已经设法随机获得其中一个,但我还没有能够制作循环,然后选择职业再次运行。例如:

资源管理器,制图师,

这是我的代码的简化版本。第一部分是正确的,但我不确定如何触发下一个循环。

{{1}}

1 个答案:

答案 0 :(得分:0)

我想这个。我相信根据您的描述,当前职业位于列表的前面,之前的职业是列表中的下一个职业。

str_occs = 'Occ1,Occ2,Occ3'
list_occs = str_occs.split(',')

def prev_occ(occupation, list_occs):
    prev_occ_index = list_occs.index(occupation) + 1
    try:
        ret_val = list_occs[prev_occ_index]
    except:
        ret_val = "No prior occupations."

    return ret_val

您可以在此处试用:https://repl.it/B08A