[PYTHON] 100 coups de langue amateur: 06

C'est un record de défi de 100 langues de traitement knock 2015. L'environnement est Ubuntu 16.04 LTS + Python 3.5.2 : : Anaconda 4.1.1 (64 bits). Cliquez ici pour une liste des coups passés (http://qiita.com/segavvy/items/fb50ba8097d59475f760).

Chapitre 1: Mouvement préparatoire

06. Réunion

Trouvez l'ensemble des bi-grammes de caractères contenus dans «paraparaparadise» et «paragraphe» comme X et Y, respectivement, et trouvez les ensembles de somme, de produit et de différence de X et Y, respectivement. En outre, découvrez si le bi-gram'se'est inclus dans X et Y.

Le code fini:

main.py


# coding: utf-8


def n_gram(target, n):
	'''N de la liste spécifiée-Créer un gramme

argument:
	target --Liste des cibles
	n -- n-valeur gramme n (1 est uni-gramme, 2 pour bi-gram...)
Valeur de retour:
Liste de gramme
	'''
	result = []
	for i in range(0, len(target) - n + 1):
		result.append(target[i:i + n])

	return result


#Créer un ensemble
set_x = set(n_gram('paraparaparadise', 2))
print('X:' + str(set_x))
set_y = set(n_gram('paragraph', 2))
print('Y:' + str(set_y))

#Ensemble de somme
set_or = set_x | set_y
print('Ensemble de somme:' + str(set_or))

#Ensemble de produits
set_and = set_x & set_y
print('Ensemble de produits:' + str(set_and))

#Jeu de différences
set_sub = set_x - set_y
print('Jeu de différences:' + str(set_sub))

# 'se'Est inclus?
print('se est inclus dans X:' + str('se' in set_x))
print('se est inclus dans Y:' + str('se' in set_y))

Résultat de l'exécution:

Terminal


X:{'ar', 'se', 'di', 'is', 'pa', 'ap', 'ad', 'ra'}
Y:{'ar', 'gr', 'ph', 'ra', 'pa', 'ap', 'ag'}
Ensemble de somme:{'ar', 'gr', 'se', 'ph', 'di', 'is', 'pa', 'ap', 'ad', 'ra', 'ag'}
Ensemble de produits:{'ar', 'ap', 'pa', 'ra'}
Jeu de différences:{'di', 'is', 'se', 'ad'}
se est inclus dans X:True
se est inclus dans Y:False

n_gram () est une réutilisation de question précédente.

Pour les réponses des seniors, set.union (), set.intersection (), [set.difference ()](http://docs.python.jp/3/library/stdtypes.html # set.difference) est souvent utilisé. On dit qu'il est plus lisible, mais je ne suis pas bon en anglais, donc |, & et - sont plus intuitifs, alors j'ai essayé ceci.

Même ainsi, paraparaparadise apparaîtra dans un tel endroit ^^   C'est tout pour le 7e coup. Si vous avez des erreurs, j'apprécierais que vous les signaliez.

Recommended Posts

100 coups de traitement du langage amateur: 41
100 coups de traitement du langage amateur: 71
100 coups de traitement du langage amateur: 56
100 coups de traitement du langage amateur: 24
100 coups de traitement du langage amateur: 50
100 coups de traitement du langage amateur: 59
100 coups de traitement du langage amateur: 70
100 coups de traitement du langage amateur: 62
100 coups de traitement du langage amateur: 60
100 coups de traitement du langage amateur: 92
100 coups de langue amateur: 30
100 coups de langue amateur: 06
100 coups de traitement du langage amateur: 84
100 coups de traitement du langage amateur: 81
100 coups de langue amateur: 33
100 coups de traitement du langage amateur: 46
100 coups de traitement du langage amateur: 88
100 coups de traitement du langage amateur: 89
100 coups de traitement du langage amateur: 40
100 coups de traitement du langage amateur: 45
100 coups de traitement du langage amateur: 43
100 coups de traitement du langage amateur: 55
100 coups de traitement du langage amateur: 22
100 coups de traitement du langage amateur: 61
100 coups de traitement du langage amateur: 94
100 coups de traitement du langage amateur: 54
100 coups de langue amateur: 04
100 coups de traitement du langage amateur: 63
100 coups de traitement du langage amateur: 78
100 coups de traitement du langage amateur: 12
100 coups de traitement du langage amateur: 14
100 coups de langue amateur: 08
100 coups de traitement du langage amateur: 42
100 coups de traitement du langage amateur: 19
100 coups de traitement du langage amateur: 73
100 coups de traitement du langage amateur: 75
100 coups de traitement du langage amateur: 98
100 coups de traitement du langage amateur: 83
100 coups de traitement du langage amateur: 95
100 coups de traitement du langage amateur: 32
100 coups de traitement du langage amateur: 96
100 coups de traitement du langage amateur: 87
100 coups de traitement du langage amateur: 72
100 coups de traitement du langage amateur: 79
100 coups de traitement du langage amateur: 23
100 coups de langue amateur: 05
100 coups de langue amateur: 00
100 coups de langue amateur: 02
100 coups de traitement du langage amateur: 37
100 coups de traitement du langage amateur: 21
100 coups de traitement du langage amateur: 68
100 coups de traitement du langage amateur: 11
100 coups de traitement du langage amateur: 90
100 coups de traitement du langage amateur: 74
100 coups de traitement du langage amateur: 66
100 coups de traitement du langage amateur: 28
100 coups de traitement du langage amateur: 64
100 coups de traitement du langage amateur: 34
100 coups de traitement du langage amateur: 36
100 coups de traitement du langage amateur: 77
100 coups de langue amateur: 01