Я пытаюсь использовать функцию set в appengine, чтобы подготовить список с уникальными элементами. Я ударил загвоздка, когда я написал код питона, который отлично работает в оболочке Python, но не в AppEngine + Джангоlist() не работает в appengine?
Это то, что я намерен делать (запустили этот сценарий в 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
желаемый выход (получил этот выход в IDLE):
['[email protected]', '[email protected]', '[email protected]']
Теперь, когда я сделать что-то эквивалентное в моем файле views.py в 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,
})
Я получаю эту ошибку при переходе на соответствующую страницу (вставив отслеживающий):
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'
на комментирование:
#value = list(set(re.split('^\s*|\s*,+\s*|\s*$', value)))
я получаю желаемый результат в соответствующей веб-странице:
[email protected], [email protected],, , [email protected]
Я уверен, что список() - корень моих проблем. Кто-нибудь подсказывает, почему это происходит. Пожалуйста, также предложите альтернативы. Цель состоит в том, чтобы удалить дубликаты из списка.
Благодаря
Извините .. список() есть проблема. Вопрос остается в силе, хотя – Dhushyanth