Это можно было бы написать лучше, если бы было дано больше контекста, но это решение соответствует вашему желаемому результату, я считаю.
def word_feats(words, val):
return {word: val for word in words}
vocab_positif = [ 'joli', 'bravo', 'magnifique']
vocab_negatif = [ 'arnaque', 'désagréable','mauvais']
features = {}
positive_features = word_feats(vocab_positif, 'pos')
negative_features = word_feats(vocab_negatif, 'neg')
print(positive_features)
print(negative_features))
Выход:
{'joli': 'pos', 'bravo': 'pos', 'magnifique': 'pos'}
{'arnaque': 'neg', 'désagréable': 'neg', 'mauvais': 'neg'}
Если хотите, вы можете объединить dict
s, например:
combined = {**positive_features, **negative_features}
или что-то вроде:
features = {}
features.update(word_feats(vocab_positif, 'pos'))
features.update(word_feats(vocab_negatif, 'neg'))
print(features)