0
votes

Comment éliminer les crochets '[]' de la chaîne en utilisant Python?

Je suis incapable de supprimer des supports '[]' [] ' code> de la chaîne ci-dessous.

Je reçois cette réponse via une API: P>

"\"b', 'm', 'l', 'a', 'p', 'c\",'\"\\'20,5,93767,TEST,Watch,16\\'\", \"\\'19,5,767, TEST,Lamb,23, \"\\'19,5,3767,TEST,DB,99\\'\"'"


2 commentaires

Cela ressemble plus à une liste de listes de chaînes. Si c'est vraiment une chaîne, vous pouvez simplement essayer str.replace ("[", "") et str.replace (")


Est-ce que cela répond à votre question? Comment faire une liste de plats hors de la liste des Listes?


4 Réponses :


1
votes

Vous pouvez utiliser le str.join pour cette

Imprimer (',' .join (Content_line))


0 commentaires

1
votes
# input string
a_st = """ [["b", "m", "l", "a", "p", "c"], [["20,5,93767,TEST,Watch,16"], ["19,5,767, TEST,Lamb,23"], ["19,5,3767,TEST,DB,99"]]] """

# replace brackets '[]' with ''
output = a_st.replace('[','').replace(']','')

# output
print(output)
>>> '"b", "m", "l", "a", "p", "c", "20,5,93767,TEST,Watch,16", "19,5,767, TEST,Lamb,
23", "19,5,3767,TEST,DB,99"'

1 commentaires

Merci, cela pourrait travailler pour la chaîne, mais le mien est une liste



3
votes
def flatten(content_line):
    result = []
    for element in content_line:
        if isinstance(element, list):
            result.extend(flatten(element))
        else:
            result.append(element)
    return result

flatten(content_line)

4 commentaires

Pourriez-vous ajouter une explication simple sur ce que fait exactement ce code de code?


C'est une fonction récursive qui aplatir une liste de python. Si une liste contient une autre liste, elle aplatit de manière récursive cette liste et renvoie une liste simple.


Oui. C'est le plus utile pour moi, car je reçois aussi une liste. Toujours ma sortie n'est pas ce que je voulais. Sa regarder comme ceci maintenant: ["B", "M", "L", "A", "P", "C", "20,5,93767, Test, Montre, 16", "19,5 767, Test, agneau, 23 "," 19,5 3767, test, dB, 99 "]


Si vous souhaitez plutôt une sortie de chaîne, vous pouvez utiliser ',' .join (aplatissez (Content_line))



0
votes

J'ai résolu ceci en utilisant une chaîne au lieu de tuples.


1 commentaires

Pourriez-vous expliquer comment?