উত্তর:
dict
কোনও পরামিতি ছাড়াই কল করুন
new_dict = dict()
বা সহজভাবে লিখুন
new_dict = {}
{}
ওভারের জন্য প্রায় dict()
4 বার এবং []
ওভারের জন্য 5 বার পাই list()
।
তুমি এটি করতে পারো
x = {}
x['a'] = 1
কীভাবে একটি প্রিসেট অভিধান লিখতে হবে তা জানার জন্যও দরকারী:
cmap = {'US':'USA','GB':'Great Britain'}
# Explicitly:
# -----------
def cxlate(country):
try:
ret = cmap[country]
except KeyError:
ret = '?'
return ret
present = 'US' # this one is in the dict
missing = 'RU' # this one is not
print cxlate(present) # == USA
print cxlate(missing) # == ?
# or, much more simply as suggested below:
print cmap.get(present,'?') # == USA
print cmap.get(missing,'?') # == ?
# with country codes, you might prefer to return the original on failure:
print cmap.get(present,present) # == USA
print cmap.get(missing,missing) # == RU
cxlate
আপনার উত্তরটিকে খুব জটিল বলে মনে হচ্ছে। আমি শুধু আরম্ভের অংশটি রাখতাম। ( cxlate
নিজেই খুব জটিল just আপনি ঠিকই পারতেন return cmap.get(country, '?')
))
KeyError
পরিবর্তে স্পষ্টভাবে ধরা উচিত (যা KeyboardInterrupt
এবং যেমন জিনিসগুলি ধরতে পারে SystemExit
)।
>>> dict(a=2,b=4)
{'a': 2, 'b': 4}
পাইথন অভিধানে মান যোগ করবে।
d = dict()
অথবা
d = {}
অথবা
import types
d = types.DictType.__new__(types.DictType, (), {})
সুতরাং একটি ডিক তৈরির 2 উপায় রয়েছে:
my_dict = dict()
my_dict = {}
তবে এই দুটি অপশনের {}
মধ্যে dict()
এর পঠনযোগ্য পাঠ্যের চেয়ে দক্ষ ।
এখানে দেখুন
>>> dict.fromkeys(['a','b','c'],[1,2,3])
{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [1, 2, 3]}