উত্তর:
ব্যবহার urllib.urlencode()
। এটি কী-মান জোড়ের একটি অভিধান নেয় এবং এটিকে একটি ইউআরএল (যেমন, key1=val1&key2=val2
) এর জন্য উপযুক্ত আকারে রূপান্তর করে ।
আপনি যদি পাইথন 3 ব্যবহার করেন তবে ব্যবহার করুন urllib.parse.urlencode()
আপনি যদি পুনরাবৃত্তিমূলক প্যারামগুলি সহ একটি URL তৈরি করতে চান তবে: p=1&p=2&p=3
আপনার দুটি বিকল্প রয়েছে:
>>> import urllib
>>> a = (('p',1),('p',2), ('p', 3))
>>> urllib.urlencode(a)
'p=1&p=2&p=3'
বা যদি আপনি পুনরাবৃত্তি প্যারাম দিয়ে একটি url করতে চান:
>>> urllib.urlencode({'p': [1, 2, 3]}, doseq=True)
'p=1&p=2&p=3'
doeseq
বিষয়ে অবাক হন : "ক্যোয়ারী আর্গের কোনও মান যদি সিকোয়েন্স এবং ডোজাক সত্য হয় তবে প্রতিটি সিকোয়েন্স উপাদান একটি পৃথক প্যারামিটারে রূপান্তরিত হয়।"
তৃতীয় পক্ষের পাইথন url ম্যানিপুলেশন লাইব্রেরির ফার্ল ব্যবহার করুন :
f = furl.furl('')
f.args = {'a':'A', 'b':'B'}
print(f.url) # prints ... '?a=A&b=B'
আপনি যদি পুনরাবৃত্তিমূলক পরামিতিগুলি চান, আপনি নিম্নলিখিতগুলি করতে পারেন:
f = furl.furl('')
f.args = [('a', 'A'), ('b', 'B'),('b', 'B2')]
print(f.url) # prints ... '?a=A&b=B&b=B2'
pip install furl
এটি স্ট্যান্ডার্ড লাইব্রেরির অংশ নয়
এটি আমার কাছে কিছুটা পাইথোনিক মনে হয়, এবং অন্য কোনও মডিউল ব্যবহার করে না:
x = '&'.join(["{}={}".format(k, v) for k, v in {'a':'A', 'b':'B'}.items()])