Je dois prendre une phrase ou simplement un ensemble de mots, diviser chaque mot en une variable individuelle, puis les énumérer. Voici ce que j'ai jusqu'à présent:

sentence = input('Please type a sentence:')
sentence.split(" ")

words = []
words.extend([sentence.split(" ")])
print(words)

J'utilise les mots "one two three" comme entrée pour tester le code. Avec cet exemple de phrase, la sortie prévue est [one, two, three] alors, je devrais pouvoir tout sur les variables séparées plus tard donc: words[2]

Le problème est que la liste "words" ne reçoit la phrase fractionnée que comme une variable unique variable, de sorte que la sortie devient [[one, two, three]] et il n'y a techniquement qu'une seule variable.

Aussi: je suis un noob absolu à la programmation en général, et ceci est mon premier post Alors, pardonnez-moi si j'ai raté quelque chose de flagrant,

0
Moose 16 avril 2018 à 07:59

4 réponses

Meilleure réponse
sentence = input('Please type a sentence:')
templist = sentence.split(" ")

words = []
for x in templist:
    words.append(x)
print(words)

OU

Alternative:

sentence = input('Please type a sentence:')
words = sentence.split(" ")
print(words)

Explication:

Récupère la phrase dans la variable sentence

sentence = input('Please type a sentence:')

Divisez la phrase en utilisant la fonction de division avec un espace comme délimiteur et stockez-le dans le modèle

templist = sentence.split(" ")

Itérer sur les mots dans templist et ajouter chaque mot dans la liste words

for x in templist:
words.append(x)
0
kvmahesh 16 avril 2018 à 05:07

Utilisation

words = sentence.split(" ")

Devrait résoudre votre problème. split renvoie à lui seul une liste.

3
digitake 16 avril 2018 à 05:05

split il retourne automatiquement une liste et encore une fois vous en mettez une autre [] pour qu'il soit imbriqué

words.extend(sentence.split(" "))

Ou vous pouvez directement attribuer la liste ci-dessus

words = sentence.split(' ')
print (words)

#out
[one, two, three]
0
Roushan 16 avril 2018 à 05:09

Essaye ça

words = []

def split(sentence):
    words = sentence.split(" ")
    return words


words = split("and the duck said: Woof")
print(words)

Le code est assez explicite mais pour des raisons de complétion:

  1. je fais un tableau appelé mots

  2. je fais une fonction qui va diviser une phrase pour nous

  3. j'appelle la fonction et je mets ce qui est retourné en mots

Et la sortie ressemble à ceci

['et', 'le', 'canard', 'a dit:', 'Woof']

0
H_raven 16 avril 2018 à 07:21