我已经开始向我的家人开发这个项目了,但是现在我需要将一个名字链接到另一个名字(请记住我拥有它的第一个名字)并且只在变量中存储第二个名字,记住这个列表是一个文件(*.txt)有一些名字,但我怎么能这样做?谢谢.
好吧,你似乎想从文件中获取一个随机名称.假设这些名字在不同的行,这里是你能做什么(请阅读内置rand
,int
并chomp
在方法的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的数组索引,我们就完成了!