উত্তর:
আপনার মতো কিছু ব্যবহার করা দরকার iteritems
।
for field, possible_values in fields.iteritems():
print field, possible_values
পাইথন সংস্করণ জুড়ে অভিধানের মাধ্যমে পুনরাবৃত্তি সম্পর্কিত আরও তথ্যের জন্য এই উত্তরটি দেখুন items()
।
যেহেতু পাইথন 3 iteritems()
হয় আর সমর্থিত । items()
পরিবর্তে ব্যবহার করুন।
for field, possible_values in fields.items():
print(field, possible_values)
আপনি iteritems ব্যবহার করতে চান । এটি অভিধানের উপর একটি পুনরাবৃত্তিকে ফেরত দেয় যা আপনাকে একটি টিপল দেয় (কী, মান)
>>> for field, values in fields.iteritems():
... print field, values
...
first_names ['foo', 'bar']
last_name ['gravy', 'snowman']
আপনার সমস্যাটি হ'ল আপনি ক্ষেত্রগুলিতে লুপিং করছিলেন যা অভিধানের কীগুলি ফিরিয়ে দেয়।
>>> for field in fields:
... print field
...
first_names
last_name
পাইথন 3 iteritems()
এ আর সমর্থিত নয়
সমাধান 1 :
ব্যবহার .items
for field, possible_values in fields.items():
print(field, possible_values)
সমাধান 2 :
আপনি enumerate()
পাশাপাশি ব্যবহার করতে পারেন
for field, possible_values in enumerate(fields):
print(field, possible_values)
সরাসরি অভিধানে পুনরাবৃত্তি করা যাবে না। সুতরাং আপনি tuple রূপান্তর মাধ্যমে পারেন ।
first_names = ['foo', 'bar']
last_names = ['gravy', 'snowman']
fields = {
'first_names': first_names,
'last_name': last_names,
}
tup_field=tuple(fields.items())
for names in fields.items():
field,possible_values = names
tup_possible_values=tuple(possible_values)
for pvalue in tup_possible_values:
print (field + "is" + pvalue)
আপনি fields.iteritems()
আপনার কোড অনুপস্থিত ।
আপনি এটি অন্য উপায়ে করতেও পারেন, যেখানে আপনি অভিধানে কী ব্যবহার করে মান পাবেন।
for key in fields:
value = fields[key]
data = (['President','George','Bush','is','.'],['O','B-PERSON','I-PERSON','O','O'])
corpus = []
for(doc,tags) in data:
doc_tag = []
for word,tag in zip(doc,tags):
doc_tag.append((word,tag))
corpus.append(doc_tag)
print(corpus)