import randomList = ['a','b','c','d'] First = raw_input("First :")for Item in List:        if First == Item:                List.remove(First)                Second=random.sample(List,1)                for Second in Second:                    List.remove(Second)                Third=random.sample(List,1)                for Third in Third:                    List.remove(Third)                Fourth=random.sample(x,1)                for Fourth in Fourth:                    List.remove(Fourth)print First + '|' + Second + '|' + Third + '|' + Fourth

代码解析

定义列表List

First为人为输入的第一个项

系统判断如果First属于列表List,则将First的值从列表List中去除

之后从列表List(已经去除First)中随机取一个值为Second,并从列表List中去除Second的值

再从列表List(已经去除First,Second)中随机取一个值为Third,并从列表List中去除Third的值

最后从列表List(已经去除First,Second和Third)中取值为Fourth

最后按照要求输出

每一个从列表中去除值前面的for循环的作用是:由于直接通过random取出的值依旧是列表形式,所以需要用for循环的方式把random的取值从列表转换成字符串。

把上面的例子改成函数模式:

import randomnumName=""def rmKey(listName,numName):        for numName in numName:                listName.remove(numName)                return numNamedef listRandom(listName):        keyName=""        keyName=random.sample(listName,1)        return keyName       First=""Second=""Third=""Fourth=""List = ['a','b','c','d'] First = raw_input("First :")for Item in List:        if First == Item:                rmKey(List,First)                Second=listRandom(List)                Second=rmKey(List,Second)                Third=listRandom(List)                Third=rmKey(List,Third)                Fourth=listRandom(List)                Fourth=rmKey(List,Fourth)print First + '|' + Second + '|' + Third + '|' + Fourth