步驟格式重整

提示:

帶‘-’的爲非正常步驟,爲正常步驟的中間步驟

要求:

1.按照給出數據,進行重整,必須爲S1...S2...S3................

2.非正常步驟的順序也需要進行重整,必須爲-1,-2.....

def test(steps):
    step_num = 1
    if '-' in steps[0]:
        steps[0] = 'S1'
    for i in range(len(steps)):
        step = steps[i]
        if '-' not in step:
            step = 'S' + str(step_num)
            steps[i] = step
            step_num += 1
    for i in range(len(steps)):
        n = i
        step = steps[i]
        if '-' in step:
            part_1 = int(step.split('-')[0].replace('S', ''))
            part_2 = step.split('-')[-1]
            while True:
                part_flag = steps[n - 1]
                if '-' not in part_flag: break
                n -= 1
            part_num = int(part_flag.replace('S', ''))
            step_reday_replace_count = 0
            for ele in steps:
                if 'S' + str(part_num) + '-S' + str(part_num + 1) in ele:
                    step_reday_replace_count += 1
            step = step.replace('S' + str(part_1), 'S' + str(part_num)).replace('S' + str(part_1 + 1),
                                                                                'S' + str(part_num + 1)).replace(
                '-' + part_2, '-' + str(step_reday_replace_count + 1))
            steps[i] = step
    return steps

if __name__=='__main__':
    print(test(['S1-S2-1','S3','S6-S7-1','S4','S6-S7-2']))

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章