2011-04-05 26 views
8

उदाहरण:

my $some_variable; 
my @some_variable; 
my %some_variable; 

मुझे पता है, @ सरणी, $ आदिम के लिए के लिए हो रहा है, यह पूरी तरह से सही है? % के लिए क्या है?

+6

वास्तव में, परल पर कोई प्रविष्टि स्तर की पुस्तक आपको यह बताने में सक्षम होना चाहिए। –

+2

आप Google पर 'sigil' देख सकते हैं। – Benoit

+0

यह संभवतः डुप्लिकेट नहीं हो सकता – DVK

उत्तर

7

$ स्केलर है, @ सरणी है, और % हैश है।

+0

हाँ, लेकिन एक funcction में पास-इन पैरामीटर रखने के लिए $ _ और @_ समान क्यों हैं? या मैं गलत हूँ? – nicola

+1

@nicola, ऐरे और हैश तत्व "$" का उपयोग करते हैं। '$ _ [0]' '_ _' का पहला तत्व है। दोनों '$ _' के लिए अप्रतिबंधित हैं। – ikegami

+5

@nicola => '_ _' एक सरणी है जिसमें फ़ंक्शन में दिए गए सभी तर्क शामिल हैं। '$ _' एक स्केलर है जिसमें मौजूदा आइटम को 'for (@array) {...}' जैसी स्थितियों में काम किया जा रहा है। '_ _' के पास' _ _' के साथ कुछ लेना देना नहीं है। जहां आप भ्रमित हो रहे हैं, यह है कि तर्क सूची के किसी व्यक्तिगत तत्व तक पहुंचने के लिए, आप '$ _ [0]' लिखेंगे, जो पहले तत्व तक पहुंचता है। यहां सिगिल को '$' में बदल दिया गया है, यह दर्शाता है कि आप स्केलर तक पहुंच रहे हैं, हालांकि पिछला '[0]' पेर्ल बताता है कि यह '_' या अन्य शब्दों में सरणी के स्केलर तत्व तक पहुंच रहा है,' _ _' । –

4

$ वर एक एकल मूल्यवान अदिश चर
@var अर्थ है एक सरणी
% वर एक साहचर्य सरणी या हैश (वे दोनों एक ही हैं)

12

$ scalars के लिए है को दर्शाता है दर्शाता है, @ सरणियों के लिए है , और % हैश के लिए है। अधिक जानकारी के लिए दस्तावेज़ों के Variable Types अनुभाग देखें।

17

पर्ल के बारे में अच्छी चीजों में से एक यह है कि यह मैन्युअल रूप से निर्मित है। निम्न आदेश में टाइप करें:

perldoc perlintro 

और अनुभाग पर्ल वैरिएबल प्रकार पर एक नज़र डालें। आप इसे पर्ल वैरिएबल पर perldoc.perl.org सेक्शन के साथ भी देख सकते हैं।

एक त्वरित अवलोकन:

  • $ foo एक अदिश चर रहा है। यह एक सिंगल वैल्यू रख सकता है जो एक स्ट्रिंग, न्यूमेरिक इत्यादि हो सकता है।
  • @fooसर है। Arrays कई मान रख सकते हैं। आप इंडेक्स का उपयोग करके इन मानों तक पहुंच सकते हैं। उदाहरण के लिए $ foo [0] सरणी का पहला तत्व है और $ foo [1] सरणी का दूसरा तत्व है, आदि (Arrays आमतौर पर शून्य से शुरू होते हैं)।
  • % foo, एक हैश है इस एक सरणी की तरह है, क्योंकि यह एक से अधिक मान हो सकता है, लेकिन हैश सरणियों keyed रहे हैं। उदाहरण के लिए, मेरे पास एक पासवर्ड हैश है जिसे % पासवर्ड कहा जाता है। यह उपयोगकर्ता नाम से कुंजी है और मान उपयोगकर्ता का पासवर्ड हैं। उदाहरण के लिए:

    $ पासवर्ड {फ्रेड} = "तलवार मछली"; $ पासवर्ड {बेट्टी} = "गुप्त";

    $ उपयोगकर्ता = "फ्रेड"; प्रिंट "उपयोगकर्ता $ उपयोगकर्ता के लिए पासवर्ड $ पासवर्ड है {$ उपयोगकर्ता} \ n"; # Swordfish $ उपयोगकर्ता = "बेट्टी" प्रिंट करता है; प्रिंट "उपयोगकर्ता $ उपयोगकर्ता के लिए पासवर्ड $ पासवर्ड है {$ उपयोगकर्ता} \ n"; बाहर #Prints गुप्त

ध्यान दें कि जब आप एक हैश या सरणी में एक भी मूल्य का उल्लेख है, तो आप डॉलर चिह्न का उपयोग करें। यह शुरुआती लोगों के लिए थोड़ा उलझन में है।

मैं आपको सलाह दूंगा कि आपको लामा बुक मिल जाएगा। लामा बुकLearning Perl है और यह भाषा के लिए एक उत्कृष्ट परिचय है।

संबंधित मुद्दे