एक क्रमबद्ध सूची और कुछ यादृच्छिक मान होने के बाद, मैं यह जानना चाहता हूं कि मूल्य किस श्रेणी में है।एक पाइथोनिक तरीका यह पता लगाने के लिए कि कोई मान किसी सूची में दो मानों के बीच है या नहीं
सूची इस प्रकार है: [0, 5, 10, 15, 20] और मूल्य है, का कहना है 8.
मानक तरीका करने के लिए या तो शुरू से ही जाना जब तक हम मूल्य कि तुलना में बड़ा है पर मारते थे हमारा (नीचे दिए गए उदाहरण में), या binary search करने के लिए।
grid = [0, 5, 10, 15, 20]
value = 8
result_index = 0
while result_index < len(grid) and grid[result_index] < value:
result_index += 1
print result_index
मैं अगर वहाँ एक और अधिक pythonic तरीका है, के रूप में इस छोटे से हालांकि, एक आंख पीड़ादायक का सा लग रहा है सोच रहा हूँ। आपके समय के लिए धन्यवाद!
+1, दस सेकंड से यह करने के लिए मुझे हराया। हालांकि stdlib दस्तावेज़ों को जोड़ने के लायक होगा। – Kiv
मुझे लगता है कि मुझे खोजने के लिए सही शब्द नहीं मिला! बहुत बहुत धन्यवाद, यह वही है जो मैं ढूंढ रहा था! –
ओ गोश, एक और WET भाषा! :) यह देखने के लिए हास्यास्पद है कि कैसे पाइथन (जावा के रूप में एक कठोर प्रकार प्रणाली से पीड़ित होने के बावजूद) फिर भी आप सबकुछ दो बार लिखने के लिए मजबूर करते हैं। – akuhn