2024-05-16 22:17:09 发布
网友
如果文件.txt包含:
appple cheese cake tree pie
使用这个:
这将只打印1行文件.txt在
如何打印1-2行(随机)?在
示例:
第一次输出=苹果 第二个输出=cheesetree 第三输出=馅饼 第四产出=蛋糕
您有两个基本选项,这取决于(假设您是在一个两行的情况下)是要选择两个随机行,还是选择任意两个随机行两次。也就是说,是否允许重复。在
如果你想允许重复,你需要先选择一个^{},然后运行你已经有很多次的代码。这是“随机抽取一行,随机抽取若干次。”
# print one or two random lines: possibly the same line twice! for i in range(random.randint(1, 2)): # change the upper bound as desired print(random.choice(nameLines))
在另一种情况下,使用^{},然后打印所有结果。这是“随机选取离散线数”。在
为你的用例使用合适的一个!在
你想要所有输出的概率都是偶数吗?在
假设顺序无关紧要,并且文本文件中的n行,这意味着您要从n + n(n-1)/2 = n(n+1)/2不同的结果中选择。那就是(n+1) choose 2。如果将空值设置为附加结果,则将获得正确的分布。在
n
n + n(n-1)/2 = n(n+1)/2
(n+1) choose 2
因此:
nameFile = ("/path/to/file.txt") nameLines = open(nameFile).read().splitlines() nameLines.append("") randomName = "".join(random.sample(nameLines, 2))
它总是选择两个中的random.sample,但是其中一个值可能是添加的空字符串。这就好像你只需要选择一个值。在
random.sample
如果你不希望所有可能的结果都是均匀分布的,那么你应该首先选择你想要的是1还是2,然后相应地从列表中选择。在
要产生多个随机数,请使用^{}。可以随机化样本大小:
randomNames = random.sample(nameLines, random.randint(1, 2))
这将为您提供一个包含1个或2个项目的列表,从输入中随机抽取一个样本。在
演示:
如果需要,请使用str.join()将单词连接在一起:
str.join()
>>> ' '.join(random.sample(nameLines, random.randint(1, 2))) 'pie cake' >>> ' '.join(random.sample(nameLines, random.randint(1, 2))) 'cake'
您有两个基本选项,这取决于(假设您是在一个两行的情况下)是要选择两个随机行,还是选择任意两个随机行两次。也就是说,是否允许重复。在
如果你想允许重复,你需要先选择一个^{} ,然后运行你已经有很多次的代码。这是“随机抽取一行,随机抽取若干次。”
在另一种情况下,使用^{} ,然后打印所有结果。这是“随机选取离散线数”。在
^{pr2}$为你的用例使用合适的一个!在
你想要所有输出的概率都是偶数吗?在
假设顺序无关紧要,并且文本文件中的
n
行,这意味着您要从n + n(n-1)/2 = n(n+1)/2
不同的结果中选择。那就是(n+1) choose 2
。如果将空值设置为附加结果,则将获得正确的分布。在因此:
它总是选择两个中的
random.sample
,但是其中一个值可能是添加的空字符串。这就好像你只需要选择一个值。在如果你不希望所有可能的结果都是均匀分布的,那么你应该首先选择你想要的是1还是2,然后相应地从列表中选择。在
要产生多个随机数,请使用^{} 。可以随机化样本大小:
这将为您提供一个包含1个或2个项目的列表,从输入中随机抽取一个样本。在
演示:
^{pr2}$如果需要,请使用
str.join()
将单词连接在一起:相关问题 更多 >
编程相关推荐