perl 函数

perl函数参数传递

在perl语言中,有两种方式可以向函数传递参数:

①使用全局变量;利用变量的作用域规则,即如果不存在同名不同作用域的变量,就可以在整个程序中利用变量名对全局变量进行访问。

②利用默认参数列表变量(@_)实现参数的传递。

默认参数列表变量(@_)本质是一个数组,可以在函数体内创建"my"类型的局部变量来获取参数,如my($para1,$para2)=@_

perl语言中内置了一些默认变量。例如,$_是默认输入输出变量,@_是默认参数列表变量。不同于其他编程语言在定义时由用户指定参数类型和参数个数,perl语言通过采用默认参数列表变量,可以在进行函数定义时不需要指定参数列表信息,而在函数体实现的时候,利用数组赋值的方式,获取几个有效的参数。

func("string1");
func("string2");
sub func{
	my($val)=@_;
	print "this is $val\n";
}
输出结果:



函数返回值

使用return语句返回函数返回值

print hello("world");
sub hello{
	my($str)=@_;
	$str="hello $str\n";
	return $str;
}
输出结果:


把数组作为参数传递给函数

将中英语料混合,以20%的变异率进行混合。

语料编码为utf8,格式如下:

你们 将 不 负 这些 信任 。  ||| " that trust is well placed .  ||| 5:2 6:3 1:6 2:6 4:6 7:7  ||| 1:1 2:5 3:6 6:6 7:7 
中文 ||| 英文 ||| 中文单词索引对应的英文索引 |||  英文单词索引对应的中文索引

部分代码如下:

#将混合语料写入到文件中
arrToFile(@chi_arr);
函数定义如下:

#将数组写入到文件中
sub arrToFile{
	my (@chi_arr)=@_;
	foreach $ele (@chi_arr){
		print Out1 $ele." ";
	}
	print Out1 "\n";
}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值