Je cherche un moyen de déclarer une chaîne contenant des guillemets doubles et une citation unique. En JavaScript, je ferais
let str = `"," '`
3 Réponses :
La raison pour laquelle le message d'erreur dit ce qu'il fait est parce que les backuotes ont jamais utilisé dans Python pour faire ce que vous voulez. Au lieu de cela, ils étaient un raccourci pour utiliser la fonction Selon la documentation, il faut un objet p>
BlockQuote> Tout est un objet dans Python, il n'y a donc pas de problème là-bas. Mais il y a un problème dans la fonction Nous devons retourner à la question initiale à la place: < / p> Je cherche un moyen de déclarer une chaîne contenant des guillemets doubles et une citation unique. P>
blockQuote> en Python, vous pouvez échapper soit celui quel que soit celui qui soit celui que vous avez utilisé pour la chaîne, par exemple: p> ou vous pouvez utiliser la soi-disant Triple citations: p> mais attention à ce que cela ne fonctionne pas si vous avez le même type de citation à la fin em> de la chaîne: p > dans chaque cas, REC code>, qui n'est plus pris en charge.
REC code> ne fait pas ce que vous voulez strong>. P>
'"", "\' ' code> est le formulaire que Python utilisera pour signaler la chaîne de retour à vous. p> < / p>
Triple citations est plutôt la réponse! Merci
Le message dans l'EDI fait référence à l'utilisation de backticks autour d'un nom de variable ou d'une autre expression. Dans Python 2, Mais ce n'est pas vraiment ce que vous essayez de faire. Le message est simplement codé dur pour toute utilisation des backtsks. P> Il vous suffit d'échapper aux guillemets identiques que le délimiteur de chaîne. P> `quelquevar` code> était un raccourci pour REC (quelquevar) code>.
Je pensais que sur
si littéralement tout ce que je devais faire était celui-ci p> la partie qui me confondue était que je n'étais pas sûr comment passer l'argument vers la fonction depuis selon Documentation J'aurais dû réussir un objet, pas une chaîne ou une liste de chaîne. Jusqu'à ce que je réalise qu'une chaîne est un objet aussi p> Quelques exemples qui m'ont aidé à comprendre cela dans les détails p>
Je n'ai jamais supposé ça! @ Juanpa.arrivillaga
Oui, par exemple avec les backtsticks qui font quelque chose de totalement différent dans Python. Et vous continuez à doubler lorsque d'autres ont essayé de vous expliquer ce que vous ne comprenez pas.
Utilisez l'échappement:
s = '\', "' code>Utilisez la syntaxe correcte pour Python (ne faites pas de choses en place car il est vu dans une autre langue; aussi, le `Trick" fonctionne "dans JS UP jusqu'à ce que les caractères liés à l'interpolation soient impliqués, ceux-ci doivent alors être échappés). Les littéraux de chaîne pris en charge en Python sont couverts dans docs.pytHon.org/3/reference/lexical_analyse .html et didacticiels et ressources associés.
Le titre est un hareng rouge complet, comme on peut la voir rapidement par recherche i> pour
REC code> dans la documentation Python (il "ne s'applique pas" à la tâche). Ensuite, il existe une question plus pertinente une fois que les hypothèses sont mises à jour: par exemple. "Comment écrire une chaîne en python contenant des citations simples et doubles [avec un effort minimal]?" i>@ user2864740 La question n'est pas
Comment écrire une chaîne en python contenant des citations simples et doubles code> !!! La question est que l'IDE dit utiliser REC () chaud est-ce que je l'utilise si elle prend en conséquence une documentation officielle qu'il prend objetDans Python, vous ne pouvez pas faire cela sans escapade.
REC code> fait automatiquement une chaîne évasée pouvant être utilisée dans la source. Mais vous devez fournir une chaîne valide pour la REP, donc c'est une sorte de contrat de poulet et d'œuf. Le message IDE est déroutant.@SergeyProkov veuillez consulter la documentation pour
REC code>. Le message IDE serait correct si et uniquement si i> le code était à l'origine correct (pour une signification sémantique) pour utiliser des backticks comme tels dans python i> b>. L'hypothèse initiale est fausse et le message IDE ne s'applique pas. Re: "Je cherche un moyen de déclarer une chaîne contenant des citations doubles et une citation unique."@ user2864740 Vos commentaires sont Red-Herring. Je n'insiste pas d'utiliser des backuotes. La question est de savoir comment utiliser
REC () code> pour atteindre l'équivalent de JS ``@SergeyPleshakov La syntaxe `str` sur JavaScript (A Littéral à chaîne avec interpolation b>) est pas b> servant le même but / rôle que
REC code> (ceci est Fonction, et n'a rien à voir avec la construction de littéraux de chaîne de code source utilisés pour fournir des valeurs) en Python, quel que soit la manière dont le message IDE est étant [incorrect] interprété. Pas même près. Merci de lire les exemples de documentation et de conseil pour le moment.@ user2864740 Oui si la prise en compte
Les caractères liés à l'interpolation code> que je n'ai pas dans ma chaîne@SergeyPleshakov Ce message apparaît car les backtstics ont été utilisés dans Python 2 comme raccourci vers un
REC () code> appel pour convertir des objets en chaînes. Ce n'est pas exactement la même chose que les backtstics de JS.@ user2864740 mec, tout d'abord, je suis nouveau à Python, pas de maîtrise en informatique non plus, à venir ici pour obtenir de l'aide, car je veux avoir comment quelque chose fonctionne. Quel est le problème avec ça? Vous réinterprétez ma question et commencez à expliquer pourquoi `` n'est pas la même que REC () que je n'ai jamais posées. Merci pour votre temps, mais j'ai plus de soutien des autres