मुझे हैश में कुंजियों की संख्या कैसे मिलती है, जैसे $#
एरे के लिए उपयोग करना?पर्ल में हैश में चाबियों की संख्या कैसे मिल सकती है?
उत्तर
scalar keys %hash
या सिर्फ
keys %hash
यदि आप एक अदिश संदर्भ में पहले से ही कर रहे हैं, जैसे कि my $hash_count = keys %hash
या print 'bighash' if keys %hash > 1000
।
संयोग से, $#array
तत्वों की संख्या नहीं पाता है, यह अंतिम सूचकांक पाता है। scalar @array
तत्वों की संख्या पाता है।
निम्नलिखित की तरह उपयोग कर सकते हैं एक कम वापस आ जाएगी कि आपके हैश में कुंजियों की संख्या। आप इसे पसंद कर सकते हैं, तो आप चीजों (या संक्षिप्तता) करने का $#array
शैली के शौकीन हैं:
$#{$hash};
गंभीर संपादित करें: पर ... यह दिलचस्प है
होल्ड। यह काम करता है यदि आप इसे सरणी संदर्भ के रूप में उपयोग करना चाहते हैं, लेकिन यदि आप इसे बाहर उपयोग नहीं करते हैं। तो यह उपयोगी है आपके द्वारा दी गई है कि आप एक अस्थायी करने के लिए एक सरणी के रूप में अपनी चाबी निर्दिष्ट कर दी है अपने हैश के अंतिम कुंजी का उपयोग करना चाहते हैं: इस की जाँच करें:
%hash = ("barney" => "dinosaur", "elmo" => "monster");
@array = sort {$a cmp $b} keys %hash;
print $array[$#{$hash}];
# prints "elmo"
में पोस्ट करने के बाद यह मिला इस जवाब ने मुझे आश्चर्यचकित कर दिया, इसलिए मैंने इसे आजमाया और ...यह काम नहीं करता है। – dave4420
@ डेव: उपरोक्त महत्वपूर्ण संपादन की जांच करें। सर उठाने के लिए धन्यवाद। – Zaid
@Zaid: '-1 # के साथ' $ # {$ हैश} 'को प्रतिस्थापित करें। '$ सरणी [-1] 'हमेशा का अर्थ है' @ सरणी '(और' $ सरणी [-2]' का अंतिम तत्व हमेशा दूसरे से अंत तक होता है)। '$ हैश''% हैश 'से असंबंधित है। आपके कोड में, पर्ल आपको एक अनिर्धारित चर का उपयोग एक सरणी संदर्भ के रूप में देखता है, इसलिए यह दिखाता है कि यह * एक सरणी संदर्भ है। 'चेतावनियों का उपयोग करने का प्रयास करें; सख्त उपयोग करें; 'शुरुआत में और देखें कि क्या पर्ल कहता है। – dave4420
लेकिन Perl 5.10 के बाद नहीं:
use feature ":5.10";
my %p =();
say $#%p;
# $# is no longer supported
और बदतर:
use feature ":5.10";
my %p = (a=>1, b=>2, c=>3);
say $#{%p};
# -1
यह आसान तरीका में और हैश का किसी भी आकार के लिए काम करेंगे।
प्रिंट स्केलर कुंजी% हैश;
क्षमा करें, लेकिन यह 'प्रिंट' का उपयोग करने के अलावा 7 साल पहले पोस्ट किए गए भारी, स्वीकृत उत्तर से अलग कैसे है? –
प्रिंट स्केलर कुंजी% हैश;
OR
$ एक्स = कुंजी% हैश; प्रिंट $ एक्स;
(कुंजी% हैश सूची संदर्भ कि अदिश संदर्भ में आगे के परिवर्तन (अदिश चर करने के लिए जब बताए में चाबियों का मान) ।)
- 1. मुझे पर्ल में "अज्ञात हैश में तत्वों की विषम संख्या" चेतावनी क्यों मिल रही है?
- 2. टेम्पलेट टूलकिट में मुझे यादृच्छिक संख्या कैसे मिल सकती है?
- 3. leveldb में चाबियों की सही संख्या कैसे प्राप्त करें?
- 4. मुझे लुआ में हैश टेबल में कुंजियों की संख्या कैसे प्राप्त हो सकती है?
- 5. पर्ल में यूनिकोड स्ट्रिंग की लंबाई मुझे कैसे मिल सकती है?
- 6. मुझे निकटतम प्रधान संख्या कैसे मिल सकती है?
- 7. जोडाटाइम का उपयोग कर एक वर्ष में मुझे दिनों की संख्या कैसे मिल सकती है?
- 8. मुझे बैश स्क्रिप्ट में दिए गए तर्कों की संख्या कैसे मिल सकती है?
- 9. हैश मैप से चाबियों की सूची कैसे वापस करें?
- 10. क्या मुझे एचटीएमएल 5 वीडियो में मौजूदा फ्रेम की संख्या मिल सकती है?
- 11. मुझे खोज शब्द की लोकप्रियता कैसे मिल सकती है?
- 12. PHP में अंकों की एक निश्चित संख्या में पीआई की गणना कैसे की जा सकती है?
- 13. विंडोज़ पर पर्ल में काम करने के लिए मुझे पाइपिंग कैसे मिल सकती है?
- 14. मैं पर्ल में हैश का हैश कैसे बना सकता हूं?
- 15. मुझे दो तिथियों के बीच वर्षों की संख्या कैसे मिल सकती है?
- 16. इंटेलिजे आईडीईए में मुझे विशेष फ़ाइल कैसे मिल सकती है?
- 17. कैसे एक पर्ल हैश
- 18. पर्ल में हैश के हैश की गहरी प्रतिलिपि बनाने का सबसे अच्छा तरीका क्या है?
- 19. क्या हैशसेट्स को हैश मैप में चाबियाँ मिल सकती हैं? यदि कोई विकल्प नहीं है तो
- 20. हैश पर्ल
- 21. पर्ल की प्रणाली() कमांड को कैसे प्रिंट कर सकती है?
- 22. एक पर्ल हैश
- 23. मुझे वर्तमान तिथि कैसे मिल सकती है?
- 24. किसी भी पल में मुझे अपनी साइट (आईआईएस 7/एएसपीनेट) पर आगंतुकों/उपयोगकर्ताओं की संख्या कैसे मिल सकती है?
- 25. बाइनरी में 1 की संख्या की संख्या कैसे गिनती है?
- 26. एक हैश मैप थ्रेड-सुरक्षित विभिन्न चाबियों के लिए है?
- 27. मैं पर्ल में किसी फ़ंक्शन में हैश कैसे पास करूं?
- 28. मुझे पर्ल के विशेष चर के बारे में जानकारी कहां मिल सकती है?
- 29. क्या पर्ल में एक सहयोगी सरणी प्रकार है जिसमें किसी भी प्रकार की चाबी हो सकती है?
- 30. पर्ल हैश डेटा :: डम्पर
$ # + 1 - हम तत्वों का कोई मिल जाएगा। मेरा मतलब है कि $ # – joe
आह के लिए, मैं देखता हूं। खैर, मैं अभी भी '$ # सरणी + 1' पर 'स्केलर @ सरणी' की अनुशंसा करता हूं। :) – chaos
क्या – joe