टुपल्स की सूची के माध्यम से तारों को छेड़छाड़ करना ... मदद? - अजगर

मैं tuples जो फिल्मों और सह-कलाकारों के माध्यम से अन्य अभिनेताओं के लिए दिए गए अभिनेता संबंधित की एक सूची है:

किसी दिए गए अभिनेता E ActE के लिए:

conn_list = [("m6", "D ActD"), ("m3", "B ActB"), ("m2", "Kevin Bacon")]

तो यह कहता है कि:

E ActE was in a movie m6 with D ActD
D ActE was in a movie m3 with B ActB
B ActB was in a movie m3 with Kevin Bacon

मैं सिर्फ सोच रहा था कि इसे कैसे प्रिंट किया जाए।मुझे पता है कि कैसे एक सूची के माध्यम से टॉगल करें और टुपल्स से तत्व प्राप्त करें। मैं पाश के लिए के माध्यम से पुनरावृति के लिए उपयोग कर रहा हूँ, लेकिन मुझे नहीं पता कि स्ट्रिंग्स को प्रिंट करते समय बदलते अभिनेताओं से कैसे निपटना है।

for connection in conn_list:
print "%s was in %s with %s"(            , connection[0],            )

यह बहुत ज्यादा है जहाँ मैं "मैं अटक गया हूँ। मैं बहुत सारे फ़िल्मों और अभिनेताओं के होने के बाद से कई प्रिंट स्टेटमेंट नहीं बनाना चाहता।" कोई विचार?

उत्तर:

उत्तर № 1 के लिए 1

आपका इनपुट आपके प्रारूप स्ट्रिंग से मेल नहीं खाता है, लेकिन यह वही है जो आप करना चाहते हैं:

actor_name = "ActE"
conn_list = [("m6", "D ActD"),
("m3", "B ActB"),
("m2", "Kevin Bacon")]

for con in conn_list:
print "%s was in movie %s with %s" % (actor_name, con[0], con[1])

प्रारूप स्ट्रिंग टपल ले जाएगा और की जगह लेगा %s उस स्थान पर तत्व के साथ, उदाहरण के लिए:

"%s likes %s" % ("bob", "apples")

पहले की जगह लेगा %s साथ में tuple[0] और दूसरा %s साथ में tuple[1]


संपादित करें: जबकि यह आपके प्रश्न में समस्या को ठीक कर देगा ... इसे कुछ बार फिर से पढ़ना, मुझे लगता है कि आप जो चाहते हैं वह कुछ ऐसा हो सकता है जो एक ही फिल्म में समूह अभिनेताओं का हो? लेकिन मैं अनिश्चित हूँ।


उत्तर № 2 के लिए 1

मुझे लगता है कि हम "कुछ प्रासंगिक जानकारी याद कर रहे हैं? यदि conn_list अभिनेता के लिए कनेक्शन सूची है E ActE तब संभवतः वहाँ एक चर है जिसमें स्ट्रिंग शामिल है E ActE। क्या वो सही है?

सर्दालिस ने बताया है कि आप किस तरह इसका उपयोग कर सकते हैं % ऑपरेटर आपके इच्छित संदेश को प्रिंट करने के लिए, लेकिन यदि आप संरचना को संशोधित नहीं करना चाहते हैं conn_list तो आप इस तरह कुछ उपयोग कर सकते हैं:

current_actor = "E ActE"
for connection in conn_list:
print "%s was in %s with %s" % (current_actor, connection[0], connection[1])
current_actor = connection[1]

जब मैं इसे आपके साथ चलाता हूं conn_list मुझे मिला:

E ActE was in m6 with D ActD
D ActD was in m3 with B ActB
B ActB was in m2 with Kevin Bacon

का उपयोग करने के लिए भी बेहतर होगा format(...) के बाद से तार की विधि % ऑपरेटर को चरणबद्ध किया जा रहा है:

current_actor = "E ActE"
print connection in conn_list:
print "{0} was in {1} with {2}".format(current_actor, connection[0], connection[1])
current_actor = connection[1]

जो एक ही आउटपुट का उत्पादन करता है।

संपादित करें: जब मैं यह लिख रहा था तब सर्दालियों ने उनके समाधान का संपादन किया। समाधान अब मूल रूप का उपयोग करता है conn_list


संबंधित सवाल
सबसे लोकप्रिय