繁体   English   中英

Python:随机无重复,但定义为

[英]Python: Random without repetition, but in def

我不知道在def中如何不重复就可以随机分配句子。

def yellowJeden(x,m):
    if m <= 25:
        zd1 = "Juz na samym poczatku meczu "+ x.strip() + " dostal"
        zd2 = "Juz w " + str(m) + ". minucie meczu zawodnik druzyny "+ druzyna1 + " dostal zolta kartke. "+ x.strip() + " sfaulowal swojego przeciwnika."
        zd3 = x.strip() + " juz w poczatkowych minutach meczu otrzymal zolta kartke za nieczyste zagranie. Sfaulowal on zowodnika druzyny przeciwnej. "

        zolta1 = [zd1, zd2, zd3]
        zolta1Index = random.randint(0, len(zolta1)-1)
        print zolta1[zolta1Index]
        zolta1.remove(zolta1[zolta1Index])

def akcja():
    a = line.split(',')
    min = int(a[1])
    if a[2] == ' yellow1':
        yellow1 = a[3]
        yellowJeden(yellow1, min)
    elif a[2] == ' yellow2':
        yellow2 = a[3]
        yellowDwa(yellow2, min)

for line in fh:
    if line.startswith('1.'):
        akcja()
    elif line.startswith('2.'):
        akcja()
    elif line.startswith('3.'):
        akcja()

更复杂。 我不想写每句话。

您是否正在寻找这样的东西?

>>> import random
>>> def ShuffleSentences():
...     sentences = [ "First sentence", "Second sentence", "Third sentence", "last sentence"]
...     random.shuffle(sentences)
...     for s in sentences:
...         print s
...
>>> ShuffleSentences()
Second sentence
last sentence
Third sentence
First sentence
>>> ShuffleSentences()
Second sentence
First sentence
Third sentence
last sentence
>>> ShuffleSentences()
Second sentence
Third sentence
First sentence
last sentence
>>>

考虑句子的集合(例如,列表)。 使用random.shuffle洗净集合。 这样可以避免重复。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM