1. 程式人生 > >PERL語言入門:第三章:列表與陣列:foreach, $_, each用法

PERL語言入門:第三章:列表與陣列:foreach, $_, each用法

#!/usr/bin/perl -w
#foreach輸出陣列或列表
#$_為 PERL的預設變數, 當foreach不設定引數時, 預設儲存到$_中
#eg.

@array = qw/path user login passwd test/;
print "陣列\@arry值為:@array\n";
print qq/用foreach輸出陣列:\n/;

#注意這裡的陣列要用括號括住才行
foreach $test (@array){
	print "$test\t";
}
print "\n";
#注意, 些時再輸出$test會得到undef, 因為當退出foreach時, $test迴歸原來狀態
print "\n";
print "\$test = $test\n";
print "\n";
foreach $test (1..9){
	print "$test\t";
}
print "\n";
#現在省略$test變數再輸出試下
foreach (@array){
	print "$_\t";
}
print "\n";
#現在省略$test變數再輸出試下
foreach (a..z,A..Z){
	print "$_\t";
}
print "\n";

#each能返回陣列或列表的索引與值
@array=qw/NAME ROOT HOST LOCALHOST IP 192.168.1.3/;
my($a, $b);
while (($a, $b) = each @array){
	print "$a\t$b\n";
	#注意這裡的括號
}
#注意, 用my定義變數時, 要加括號括起來, 而my定義的變數, 只在一個塊裡有效,
#像上面一樣, 當while塊結束時, my定義的兩個變數值會重新變成undef
print q/$a = /;
print "$a\n";
print q/$b = /;
print "$b\n";

相關推薦

PERL語言入門::列表陣列:foreach, $_, each用法

#!/usr/bin/perl -w #foreach輸出陣列或列表 #$_為 PERL的預設變數, 當foreach不設定引數時, 預設儲存到$_中 #eg. @array = qw/path user login passwd test/; print "陣列\@ar

Perl語言入門 列表陣列

1.陣列名字(本例中:fred)和標量是屬於完全不同的名稱空間(namespace)。同一程式也可以同時包含叫做$fred 的標量   變數。如:能夠使用標量變數(如$fred)的地方     使用陣列元素(如$fred[2])。 2.最後一個元素的索引為$#rocks。(

perl語言入門總結-3-列表數組

In perl rocks bold 集合 總結 roc KS span 1-列表list指的是標題的有序集合, 而數組(array)則是存儲列表的變量。 更精確地說,列表指的是數據,而數組指的是變量。 訪問數組中的元素 $fred[0] = "yabba"; $

《NLP漢語自然語言處理原理實踐》 詞彙分詞技術

中文分詞的研究經歷了二十多年,基本上可以分為如下三個流派。 1.機械式分詞法(基於字典)。機械分詞的原理是將文件中的字串與詞典中的詞條進行逐一匹配,如果詞典中找到某個字串,則匹配成功,可以切分,否則不予切分。基於詞典的機械分詞法,實現簡單、實用性強,但機械分詞法的最大的缺點是詞典的完備

《C語言程式設計》練習習題答案

[練3-1] 不需要;因為已經涵蓋了所有可能的條件。 [練3-2] #include<stdio.h> int main(void) { int y; double x; printf("Enter x:"); scanf("%lf",&x); if(x&

《NLP漢語自然語言處理原理實踐》 詞彙分詞技術

中文分詞的研究經歷了二十多年,基本上可以分為如下三個流派。 1.機械式分詞法(基於字典)。機械分詞的原理是將文件中的字串與詞典中的詞條進行逐一匹配,如果詞典中找到某個字串,則匹配成功,可以切分,否則

MDN——javascript——入門——對象——json——知識點總結

.json 控制 als null 集合 ron for com 音頻 1. JSON:javascript object notation(js 對象表示法) 將結構化數據表示為JavaScript對象的標準格式, 通常用於在網站上表示和傳輸數據 (從服務器向客戶端

現代軟件工程-構建之法--- 練習討論

討論 工業 規模 str 自身 寬度 內部 時也 直接 1.選哪一種醫生? (1).如果是我的話,我會選擇C類型的醫生。因為c類型的醫生比較靠譜,首先他的從業經驗比較豐富,遇見過很多類似的病歷,對病情包括手術比較有把握,對患者可能會比較了解;還有就是他可以一邊開刀一邊跟別人

集合排序 3-3 為聚合結果指定條件

執行順序 排序 png 常數 第三章 info mage 分享圖片 需要 一、HAVING 子句 HAVING 和 WHERE並用時 SELECT 的執行順序: FROM ---WHERE ---GROUP BY----HAVING---- SELECT 二、HAV

列表

1.列表的抽象資料型別定義listSize(屬性)    列表的元素個數 pos  (屬性)       列表的當前位置 length (屬性)    

佇列 練習題 10:括號畫家

10:括號畫家 總時間限制:  1000ms   記憶體限制:  262144kB 描述 Candela是一名漫畫家,她有一個奇特的愛好,就是在紙上畫括號。這一天,剛剛起床的Candela畫了一排括號序列,其中包含小括號()、中括號[]和

JAVA基礎-類物件、抽象類、介面 JAVA基礎第一-初識java JAVA基礎第二-java三大特性:封裝、繼承、多型

 業內經常說的一句話是不要重複造輪子,但是有時候,只有自己造一個輪子了,才會深刻明白什麼樣的輪子適合山路,什麼樣的輪子適合平地! 我將會持續更新java基礎知識,歡迎關注。   往期章節: JAVA基礎第一章-初識java JAVA基礎第二章-java三大特

JAVA基礎-類物件、抽象類、介面

  前言      標題沒有看錯,真的是讓我寫個 bug!      剛接到這個需求時我內心沒有絲毫波瀾,甚至還有點激動。這可是我特長啊;終於可以光明正大的寫 bug 了

Java程式語言基礎 選擇結構

一.if選擇結構 1.什麼是if選擇結構:if選擇結構就是根據條件判斷後在做處理。 二.if選擇結構有哪些: 1.基本的if選擇結構 2.if-else選擇結構 3.多重if選擇結構 4.巢狀選擇結構 課後作用總結: 一.買彩票 如果體彩中了500萬,我買車、資

JAVA基礎-集合框架Collection篇 JAVA基礎第一-初識java JAVA基礎第二-java三大特性:封裝、繼承、多型 JAVA基礎-類物件、抽象類、介面 記一次list迴圈刪除元素的突發事件!

 業內經常說的一句話是不要重複造輪子,但是有時候,只有自己造一個輪子了,才會深刻明白什麼樣的輪子適合山路,什麼樣的輪子適合平地! 我將會持續更新java基礎知識,歡迎關注。   往期章節: JAVA基礎第一章-初識java JAVA基礎第二章-java三大特性

【C語言-函式-2

第2節 函式呼叫   函式呼叫一般有兩種方式,一種是形參不會影響實參的傳值呼叫,另一種是形參會影響實參的傳址呼叫。 傳值呼叫   傳值呼叫是將實參的值傳入函式體中,傳入的不過是實參的副本,不會改變實參。這個在上一節已經講過其中的原因正式因為C語言副本傳參的這個特

運算子表示式

數字物件的運算  “//”代表整除,對int和float都適用,“/”代表正常的除法,有餘數 對於複數,區域和擷取除法是無效的 >>> 3//2 1 >>> 3/2 1.5 >>> 1.5//0.3 5.0 >&

翻譯:Libevent參考手冊事件迴圈一起工作 (五) (轉)

預設情況下,event_base_loop()函式執行event_base直到其中沒有已經註冊的事件為止。執行迴圈的時候,函式重複地檢查是否有任何已經註冊的事件被觸發(比如說,讀事件的檔案描述符已經就緒,可以讀取了;或者超時事件的超時時間即將到達)。如果有事件被觸發,函式標記被觸發的事件為“啟用的”,並且執行

JAVA基礎-集合框架Map篇 JAVA基礎第一-初識java JAVA基礎第二-java三大特性:封裝、繼承、多型 JAVA基礎-類物件、抽象類、介面 JAVA基礎-集合框架Collection篇

 業內經常說的一句話是不要重複造輪子,但是有時候,只有自己造一個輪子了,才會深刻明白什麼樣的輪子適合山路,什麼樣的輪子適合平地! 我將會持續更新java基礎知識,歡迎關注。   往期章節: JAVA基礎第一章-初識java

(資料結構) 列表

3.1 從向量到列表 向量中的秩同時對應於邏輯和物理次序,而位置僅對應於邏輯次序。 3.3.1 資料結構支援的操作:靜態和動態。 size()和get()均可以在常數時間內完成。 insert()和remove()均需要線性時間完成。 靜態策略:在O(1)時間內由秩確定向量元素的