Il me semble assez commun d'avoir un argument, dans un langage dynamiquement typé qui est soit un objet soit une clé pour rechercher cet objet. Par exemple, quand je travaille avec une base de données que je pourrais avoir une méthode getMyRelatedStuff (personne)Existe-t-il une syntaxe pour cela? Dans n'importe quelle langue?
Tout ce que je vraiment besoin de rechercher les choses qui s'y rapporte est l'identifiant de la personne ainsi ma méthode pourrait ressembler à ceci en python:
def getMyRelatedStuff(person_or_id):
id = person_or_id.id if isinstance(person,User) else person_or_id
#do some lookup
Ou aller dans l'autre direction:
def someFileStuff(file_or_name):
file = file_or_name if hasattr(file,'write') else open(file_or_name)
EDIT: Je cherche construit dans la syntaxe pour cela, le plus proche, je peux penser est des mots-clés implicites et explicites en C# qui vous permettent de définir un cast entre les types.
Vous ne posez pas vraiment de question. Qu'est-ce que vous voulez savoir? –
@Nick C'est dans le titre –
Vous voulez dire que vous cherchez une sorte de syntaxe intégrée pour cela? –