Convertit une Chaîne de nom de l'Objet
J'ai besoin d'aide sur ce point. Comment puis-je convertir une chaîne de caractères dans une variable/objet/nom de l'instance, car je ne sais pas comment catégoriser cet.
En supposant que mon code est:
a = {}
b = {}
class Test:
def getKeys(self, var):
return var.keys() #where var refers to the dictionary and its a string initially
Tout d'abord, vous devez éviter le terme ambigu de "variable" en Python, puisque les objets ne sont pas des variables dans le sens commun de la mémoire-box
merci pour l'explication
Deuxièmement, tout est objet en Python et tout objet est une instance d'une classe ou d'un type. Le mot "instance" est employé lorsque le rapport entre l'objet et sa classe est plus ou moins en cause.
merci pour l'explication
Deuxièmement, tout est objet en Python et tout objet est une instance d'une classe ou d'un type. Le mot "instance" est employé lorsque le rapport entre l'objet et sa classe est plus ou moins en cause.
OriginalL'auteur Natsume | 2013-03-04
Vous devez vous connecter pour publier un commentaire.
Il est toujours depuis que j'ai fait n'importe quoi avec Python, mais je ne souviens avoir eu ce problème une fois. Je vous suggère de regarder dans le
eval()
fonction.Plutôt que de simplement en pointant sur un lien, il serait plus utile si vous pouvez fournir un exemple rapide.
Ce lien a été utile. Voici mon extrait de code comme exemple:
code
def goto(auto,lien): élément = 'soi'.'+lien locator = eval(élément) de soi.deo.find_element_by_link_text(locator).cliquez sur()code
OriginalL'auteur Isaac
Si je comprends bien, votre variable
var
est une chaîne qui peut être"a"
ou"b"
. Vous souhaitez utiliser cette lettre de choisir le bon dictionnaire variable globale à regarder dans.Je suggère de mettre votre dictionnaires dans un autre dictionnaire, avec des touches que vous pouvez utiliser pour rechercher par nom:
Cependant, cela peut être simplement un problème de conception. Au lieu d'envoyer un nom de variable à la
getkeys
méthode, pourquoi ne pas simplement envoyer le dictionnaire lui-même et utiliser votre code actuel?Au lieu de
Test().getkeys("a")
, appelTest().getkeys(a)
(sans les guillemets).OriginalL'auteur Blckknght