2013-08-22 4 views
7

मैं अजगर में टपल के लिए विभाजन टपल आइटम है कि इस तरह दिखता है:अजगर, एकल सामान

tuple = ('sparkbrowser.com', 0, 'http://facebook.com/sparkbrowser', 'Facebook') 

और मैं इसे बाहर विभाजित तो मैं टपल से हर आइटम मिल सकता है चाहता हूँ स्वतंत्र तो मैं कुछ इस तरह कर सकता है :

domain = "sparkbrowser.com" 
level = 0 
url = "http://facebook.com/sparkbrowser" 
text = "Facebook" 

या उसके जैसा कुछ, मेरी ज़रूरत है कि प्रत्येक आइटम अलग हो। मैं .split(",") टपल पर साथ की कोशिश की लेकिन मैं त्रुटि जो कहता है कि टपल विकल्प

कोई मदद या सलाह स्वागत

+0

यह कहा जाता है प्राप्त करने के लिए [* अनुक्रम खोल *] (https://docs.python.org/2/tutorial/datastructures। एचटीएमएल # tuples-and-sequences) (अंतिम पैराग्राफ देखें) या बस * अनपॅकिंग *। – n611x007

उत्तर

16

अजगर स्वाभाविक रूप से दृश्यों खोल सकता है विभाजित किया है नहीं है मिल गया है।

domain, level, url, text = ('sparkbrowser.com', 0, 'http://facebook.com/sparkbrowser', 'Facebook') 
+0

धन्यवाद, यह है, मैंने नहीं सोचा था कि इतना आसान है :) – dzordz

2
>>> domain, level, url, text = ('sparkbrowser.com', 0, 'http://facebook.com/sparkbrowser', 'Facebook') 
>>> domain 
'sparkbrowser.com' 
>>> level 
0 
>>> url 
'http://facebook.com/sparkbrowser' 
>>> text 
'Facebook' 
3

बेस्ट एक चर नाम के रूप में उपयोग करने के लिए tuple नहीं।

यदि आपके पास जैसी स्ट्रिंग थी, तो आपको का उपयोग करना पड़ सकता है, जिसे आपको किसी सूची में कनवर्ट करने की आवश्यकता होती है। हालांकि आपके पास पहले से ही एक ट्यूपल है, इसलिए यहां कोई आवश्यकता नहीं है।

आप जानते हैं कि आप घटकों के बिल्कुल सही संख्या है, तो आप इसे खोल सकते हैं सीधे

the_tuple = ('sparkbrowser.com', 0, 'http://facebook.com/sparkbrowser', 'Facebook') 
domain, level, url, text = the_tuple 

python3 शक्तिशाली unpacking वाक्य रचना है। बस domain और text आप इस्तेमाल कर सकते हैं

domain, *rest, text = the_tuple 

rest शामिल होंगे [0, 'http://facebook.com/sparkbrowser']

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