J'essaie d'utiliser la fonction set dans appengine, pour préparer une liste avec des éléments uniques. J'ai frappé un accroc quand je l'ai écrit un code python qui fonctionne très bien dans la coquille de python, mais pas dans AppEngine + djangolist() ne fonctionne pas dans appengine?
ce que je compte faire (RAN ce script dans IDLE):
import re
value=' [email protected], [email protected],, , [email protected] '
value = value.lower()
value = list(set(re.split('^\s*|\s*,+\s*|\s*$', value)))
if (value[0] == ''):
value.remove('')
print value
Le sortie désirée est (a cette sortie en IDLE):
['[email protected]', '[email protected]', '[email protected]']
maintenant, quand je fais quelque chose d'équivalent dans mon fichier views.py dans appEngine:
import os
import re
import django
from django.http import HttpResponse
from django.shortcuts import render_to_response # host of other imports also there
def add(request):
value=' [email protected], [email protected],, , [email protected] '
value = value.lower()
value = list(set(re.split('^\s*|\s*,+\s*|\s*$', value)))
if (value[0] == ''):
value.remove('')
return render_to_response('sc-actonform.html', {
'value': value,
})
Je reçois cette erreur en allant à la page appropriée (coller le retraçage):
Traceback (most recent call last):
File "G:\Dhushyanth\Google\google_appengine\lib\django\django\core\handlers\base.py" in get_response
77. response = callback(request, *callback_args, **callback_kwargs)
File "G:\Dhushyanth\development\AppengineProjects\trunk_sanjhachoolha\sandbox\dushyanth\sanjhachoolha\views.py" in add
148. value = list(set(re.split('^\s*|\s*,+\s*|\s*$', value)))
File "G:\Dhushyanth\development\AppengineProjects\trunk_sanjhachoolha\sandbox\dushyanth\sanjhachoolha\views.py" in list
208. return respond(request, None, 'sc-base', {'content': responseText})
File "G:\Dhushyanth\development\AppengineProjects\trunk_sanjhachoolha\sandbox\dushyanth\sanjhachoolha\views.py" in respond
115. params['sign_in'] = users.create_login_url(request.path)
AttributeError at /sanjhachoolha/acton/add
'set' object has no attribute 'path'
sur commentant:
#value = list(set(re.split('^\s*|\s*,+\s*|\s*$', value)))
-je obtenir la sortie désirée dans la page web appropriée:
[email protected], [email protected],, , [email protected]
Je suis sûr que la liste() est la racine de mes problèmes. Quelqu'un peut-il suggérer pourquoi cela se produit? S'il vous plaît également suggérer des alternatives. L'objectif est d'éliminer les doublons de la liste.
Merci
Désolé .. la liste() est le problème .. La question est toujours valide si – Dhushyanth