আমি এই কোডটি লেখার পদ্ধতিটি উন্নত করতে চাই। এই মুহূর্তে আমার কাছে ছয়টি পদ্ধতি রয়েছে যা প্রায় অনুলিপি-পেস্ট, কেবল একটি লাইন পরিবর্তন হচ্ছে। গণনা পরিবর্তন করতে আমি কীভাবে একটি জেনেরিক পদ্ধতি তৈরি করতে পারি এবং ডেটা ইনপুটটির সংস্থার উপর নির্ভর করে? আমি এটি অর্জনের জন্য ক্রিয়ামূলক প্রোগ্রামিং ব্যবহার করার কথা ভাবছিলাম, তবে কীভাবে এটি সঠিকভাবে করা যায় তা সম্পর্কে আমি নিশ্চিত নই।
পদ্ধতিটি একটি ডিক অবজেক্ট পাচ্ছে। তারপরে এই বস্তুটি JSON এ রূপান্তরিত হয়। midপরিবর্তনশীল বহিরাগত API থেকে মুদ্রার জন্য midrate সঙ্গে একটি JSON- সংরক্ষণ করা হয়, এটা হতে হবে সামনে লুপ অন্যথায় এপিআই প্রত্যেক পুনরাবৃত্তির ডাকা হবে এবং প্রক্রিয়া অনেক নিচে এই গতি জন্য! তারপরে forলুপে, আমি ইনপুট থেকে ডেটাটি দিয়ে পুনরাবৃত্তি করি। পদ্ধতির মধ্যে পার্থক্য কেবল তালিকায় এটি সন্নিবেশ করার আগে গণনা।.append(mid_current - bankMSell)
def margin_to_exchange_rate_sell(data):
j = data.to_JSON()
list_p = []
mid = midrate.get_midrate(j["fromCurrency"][0])
for idx, val in enumerate(j['toCurrency']):
try:
mid_current = 1/get_key(mid, j['toCurrency'][idx])
bankMSell = float(j['sellMargin'][idx])
list_p.append(mid_current - bankMSell)
except Exception as e:
list_p.append(0)
print(str(e))
return list_p
পদ্ধতিগুলির মধ্যে একটি:
def margin_to_exchange_rate_buy(data):
j = data.to_JSON()
list_p = []
mid = midrate.get_midrate(j["fromCurrency"][0])
for idx, val in enumerate(j['toCurrency']):
try:
mid_current = 1/get_key(mid, j['toCurrency'][idx])
bankMSell = float(j['sellMargin'][idx])
list_p.append(mid_current + bankMSell)
except Exception as e:
list_p.append(0)
print(str(e))
return list_p
list_p.append()লাইন, তাদের পক্ষে দৃশ্যত ভিন্ন ভিন্ন কোডে খুব পারদর্শী নয় :) :))