আমার যদি এর মতো কোনও ফাংশন থাকে:
def foo(name, opts={}):
pass
এবং আমি পরামিতিগুলিতে প্রকারের ইঙ্গিতগুলি যুক্ত করতে চাই, আমি এটি কীভাবে করব? আমি যেভাবে ধরে নিয়েছিলাম তা আমাকে একটি সিনট্যাক্স ত্রুটি দেয়:
def foo(name: str, opts={}: dict) -> str:
pass
নিম্নলিখিতটি একটি সিনট্যাক্স ত্রুটি ফেলে না তবে এই কেসটি হ্যান্ডেল করার মতো স্বজ্ঞাত উপায় বলে মনে হচ্ছে না:
def foo(name: str, opts: dict={}) -> str:
pass
typing
ডকুমেন্টেশনে বা গুগল অনুসন্ধানে আমি কিছুই খুঁজে পাচ্ছি না ।
সম্পাদনা: পাইথনে ডিফল্ট যুক্তিগুলি কীভাবে কাজ করেছিল তা আমি জানতাম না, তবে এই প্রশ্নের খাতিরে আমি উদাহরণগুলি উপরে রাখব। সাধারণভাবে নিম্নলিখিতগুলি করা আরও ভাল:
def foo(name: str, opts: dict=None) -> str:
if not opts:
opts={}
pass
scala
ভাষাও এটি একইভাবে করে।