perl学习之:@_ $_】的更多相关文章

question 1 :数组@xxx调用时,每个元素应该用$xxx[0]/$xxx[1]...   来表示所以$_[0]表示@_的一个元素,和默认缺省变量$_无关,是两个东西请查阅数组元素调用相关章节 question 2 :$_  是perl的缺省变量@_ 是perl的缺省数组…
If you omit the control varibele from the beiginning of foreach loop, Perl uses its favrorite default variable $_. This is (mostly) just like any other scalar variable, except for its unusual name. For example: ..) { #use $_ by default print "I can c…
正则表达式 简单模式:匹配$_中的内容,只需要将模式写在一对斜线(/)中就可以了. 如:#!/usr/bin/env perl use 5.010; $_="yabba dabba doo"; if(/abba/){ say "it matched!"; } 关于元字符 和shell中的差不多: .==>任意字符: *==>重复0次及其0次以上: +==>重复一次及一次以上: ?==>重复0次或一次: 模式分组 在正则表达式中,用圆括号()对…
读取标准输入 用<STDIN>进行标准输入:chomp($line=<STDIN>); 如果读到文件尾,行输入操作符就会返回undef.便可利用这一性质跳出循环. while(defined ($line=<STDIN>)){ print "I saw $line"; } 简写为: while(<STDIN>){ print "I saw $_ ."; } 注意:这个简写只在最早的写法中才能正常运行,如果将行输入操作符…
数组: 特殊的数组索引:加入对索引值超过数组尾端的元素进行赋值,数组将会根据需要自动扩大,只要有可用的内存分配给数组.意外增加的数组元素的值为undef. $a[0]="aa"; $a[1]="bb"; $a[900]="99"; 有时需要找出数组中最后一个元素的索引值,如对数组rocks而言.其最后一个元素的索引值为$#rocks,元素个数$#rocks+1. 数组最后一个元素也可以用#rokcs[-1]访问.-1表示倒数第一的意思. 列表直接…
许久没有更新重新拾起,献于小白 这次介绍的是强化学习 Q-learning,Q-learning也是离线学习的一种 关于Q-learning的算法详情看 传送门 下文中我们会用openai gym来做演示 q-learning的伪代码先看这部分,很重要 简单的算法语言描述就是 开始执行任务: 随机选择一个初始动作 执行这些动作 若未达到目标状态,则执行一下几步 在当前状态s所有可能的行为中选择一个a 利用a得到下一个状态s_ 计算Q(s,a) (对当前的行为进行学习) 下一个状态等于当前状态 开…
一:基础 1:安装perl      centos: yum -y install perl       官网:https://www.perl.org/      升级到5.22:先下载,执行./install.sh 安装           报错:/lib64/libc.so.6: version `GLIBC_2.14' not found (required by perl/bin/perl)           原因:编译时写死了glibc的版本,而系统中只到2.12 ,所以重装gli…
1.unless控制结构 类似于独立的else语句; 要么条件为真, 要么执行语句块内的代码;  unless(<condition>){code...;} 等价于  if(<condition>){}else{code...;}  也就是当条件为假是执行. ) { print "Hello"; #Hello } 2. until控制结构 until就是改装过的while, 区别在于它在条件为假是执行代码块. ;; until($i>$j){ $i++;…
子程序 定义子程序(可以在程序的任意位置) 关键字sub.子程序名(不包含与号)以及用花括号封闭起来的代码快. 如:sub marine{ $n+=1; print "hello,sailor number $n!\n"; } 调用子程序:&marine; 返回值 所有子程序都会有返回值.最后一次运算的结果是什么就将这个运算结果当作改程序的返回值. 如:sub sum_of_a_and_b{ $a+$b; print "Hey,I'm returning a valu…
这些主要是从 "小骆驼" 书上粘贴或者摘抄出来的, 个人认为需要记的语法知识 "在某些情况下, 你可能需要在一台机器上写程序, 再传送到另一台机器上运行.这时候, 请使用"文本模式(text mode)" 或者"ASCII模式(ASCIImode)". 记住, 千万不能是"二进制模式(binary mode)"即便是文本文件, 不同的系统对待换行符的方式也有所不同, 所以碰到无法理解的换行符,某些老旧的Perl还可能…