路过的大侠帮我看看这些错误指的是什么?
时间:2011-02-20
来源:互联网
- foreach my $chro (keys %chro){
- my $name = 'chro'."$chro";
- my $coordi = 200+("$chro" - 1)*100;
- print "$chro{$chro}->{"all_p"}\n";
- $name = $svg->group("transform"=>"translate(30,"$coordi")");
- my $long = 20 * "$chro{$chro}->{"all_p"}" / 1000000;
- $name->rect('x',0,'y',0,'rx',2.5,'ry',2.5,'width',5,'height',"$long",'stroke','black','full','black');
- my $cent_x = $long * "$chro{$chro}->{"cent"}" / "$chro{$chro}->{"all_g"}";
- $name->ellipse('cx',2.5,'cy',"$cent_x",'rx',2.5,'ry',1.2,'fill','white');
- }
输出的错误信息为:
Scalar found where operator expected at plotchro.pl line 35, near ""translate(30,"$coordi"
(Missing operator before $coordi?)
Bareword found where operator expected at plotchro.pl line 34, near ""$chro{$chro}->{"all_p"
(Missing operator before all_p?)
String found where operator expected at plotchro.pl line 34, near "all_p"}\n""
String found where operator expected at plotchro.pl line 35, near "all_p"}""
syntax error at plotchro.pl line 35, near ""translate(30,"$coordi"
Global symbol "$long" requires explicit package name at plotchro.pl line 36.
syntax error at plotchro.pl line 38, near "my "
Global symbol "$cent_x" requires explicit package name at plotchro.pl line 36.
Execution of plotchro.pl aborted due to compilation errors.
看不太懂,改了半天,还是不行,
求路过的大侠指点,谢谢!
作者: 长生天一 发布时间: 2011-02-20
其中$chro,也就是从哈希里提出的key是数字1,2,3,...;
$chro{$chro}->{"all_p"}也是数字。
$chro{$chro}->{"all_p"}也是数字。
作者: 长生天一 发布时间: 2011-02-20
- foreach my $chro (keys %chro){
- my $name = 'chro'.$chro;
- my $coordi = 200+($chro - 1)*100;
- print $chro{$chro}->{"all_p"}, "\n";
- $name = $svg->group("transform"=>translate(30,"$coordi"));
- my $long = 20 * $chro{$chro}->{"all_p"} / 1000000;
- $name->rect('x',0,'y',0,'rx',2.5,'ry',2.5,'width',5,'height',$long,'stroke','black','full','black');
- my $cent_x = $long * $chro{$chro}->{"cent"} / $chro{$chro}->{"all_g"};
- $name->ellipse('cx',2.5,'cy',$cent_x,'rx',2.5,'ry',1.2,'fill','white');
- }
作者: FenRagwort 发布时间: 2011-02-20
回复 FenRagwort
非常感谢您的帮助,在您的基础上,去掉"translate(30,$coordi)"内$coordi两边的括号后,就可以了。
我还是搞不明白,什么时候加"",什么时候不加""?
""号内的变量不是会被它的实际值替换么?
我又感觉,不加引号的是数字,加了引号的是字符串。那 ""号内的变量被替换后,出来的是字符串呢?还是数字?
非常感谢您的帮助,在您的基础上,去掉"translate(30,$coordi)"内$coordi两边的括号后,就可以了。
我还是搞不明白,什么时候加"",什么时候不加""?
""号内的变量不是会被它的实际值替换么?
我又感觉,不加引号的是数字,加了引号的是字符串。那 ""号内的变量被替换后,出来的是字符串呢?还是数字?
作者: 长生天一 发布时间: 2011-02-20
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28