Python 如何打印带有变量的随机行?

Python 如何打印带有变量的随机行?,python,python-3.x,python-2.7,Python,Python 3.x,Python 2.7,我有一个变量myline,在其中我存储了一个带break的行,现在我想打印2个随机行,任何人都可以建议如何做 import random myline="This is line 1 \nThis is line 2 \nThis is line 3 \nThis is line 4 \nThis is line 5 " lines = myline.readlines() print (random.sample(lines, 2)) 您想要的是拆分行,而不是读行: import

我有一个变量myline,在其中我存储了一个带break的行,现在我想打印2个随机行,任何人都可以建议如何做

 import random
 myline="This is line 1 \nThis is line 2 \nThis is line 3 \nThis is line 4 \nThis is line 5  "


lines = myline.readlines()
print (random.sample(lines, 2))

您想要的是
拆分行
,而不是
读行

import random
myline="This is line 1 \nThis is line 2 \nThis is line 3 \nThis is line 4 \nThis is line 5  "


lines = myline.splitlines()
print(random.sample(lines, 2))

# ['This is line 4 ', 'This is line 1 ']
readlines
返回文件中的行列表。这里,您有一个要拆分的字符串

如果要打印由换行符分隔的行,只需
join
带换行符的行列表:

print('\n'.join(random.sample(lines, 2)))

[‘这是第4行’,‘这是第1行’]它的打印方式是这样的,但我想在下一行打印这是第4行这是第1行因为我不能再发布答案了,我建议你使用
random.choice()
,并使用循环打印你想要的句子数。@IMCoins反复使用
random.choice
是不同的,因为它可以多次选择同一行,而
sample
carantes每个行最多出现一次。我不知道这一点,我感谢您提供的信息。--虽然我相信这只是一种偏好。我们没有这种信息。它必须是一个home赋值,并且如果请求的随机句子数大于传递的iterable的长度,
random.sample()
将不会返回任何内容。为了安全起见,我会坚持使用
random.choice()
:P