当前位置:  开发笔记 > 编程语言 > 正文

如何从列表中选择随机名称并将其存储在变量中?

如何解决《如何从列表中选择随机名称并将其存储在变量中?》经验,为你挑选了1个好方法。

我已经开始向我的家人开发这个项目了,但是现在我需要将一个名字链接到另一个名字(请记住我拥有它的第一个名字)并且只在变量中存储第二个名字,记住这个列表是一个文件(*.txt)有一些名字,但我怎么能这样做?谢谢.



1> Ether..:

好吧,你似乎想从文件中获取一个随机名称.假设这些名字在不同的行,这里是你能做什么(请阅读内置rand,intchomp在方法的perldoc perlfunc,看看他们是如何工作的):

my @names = <>;
chomp(@names);
my $random_name = $names[int(rand(@names))];

将其分解为步骤,这就是它的作用:

首先,我们在文件中读到.如果将文件传输到脚本中(例如perl myscript.pl < names.txt),则可以直接从STDIN读取<>.

然后,我们删除每行的所有换行符chomp.

现在我们想从列表中获取一个随机元素:

@list 在标量上下文中获取列表中元素的数量(例如,4)

rand(4):得到0到4之间的随机数(所以我们可以得到0到3.999999之间的数字......)

int(some number from above) 这是一个浮点数,所以让我们将它向下舍入(所以现在我们有0,1,2或3:这正是我们列表中可能的数组索引!

使用它作为@list的数组索引,我们就完成了!


对于Perl5来说甚至过于复杂:`$ names [rand @names]`会做得很好.
推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有