Использование Python Split - PullRequest
1 голос
/ 07 мая 2010

Я исправляю это, и это должно быть действительно просто, но значение sortdate равно none (обратите внимание, я делаю это только потому, что преобразование строки в дату в Python является ошибкой).

DateToPass = str(self.request.get('startdate'))
mybreak.startdate = DateToPass
faf = DateToPass.split('-')
sortdate = str(faf[2] + faf[1] + faf[0])

Это должно работать? но он просто хранится как ноль, хотя датапасс хранится нормально.

Ответы [ 3 ]

4 голосов
/ 07 мая 2010

Было бы полезно посмотреть, как выглядит self.request.get('startdate'). Это ISO (YYYY-MM-DD)? Если так, я покажу пример, используя datetime. Нет необходимости в разделении из-за datetime.datetime.strptime:

>>> import datetime
>>> date_to_pass = '2010-05-07'
>>> sortdate = datetime.datetime.strptime(date_to_pass, '%Y-%m-%d')
>>> sortdate
datetime.datetime(2010, 5, 7, 0, 0)

Объекты Datetime сортируются, поэтому нет необходимости преобразовывать их в строку. Если я не пропущу суть вашего вопроса.

1 голос
/ 07 мая 2010

Если введенная вами дата имеет формат «ГГГГ-ММ-ДД», то у вас нормально работает код. Есть несколько посторонних вызовов str (), и да, было бы правильнее использовать strptime, но ничего, что могло бы сломаться.

Например, это работает:

Python 2.5.2 (r252:60911, Apr 15 2008, 11:28:25)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> startdate = '2002-04-20'
>>> splitdate = startdate.split('-')
>>> type(splitdate[0])
<type 'str'>
>>> splitdate[2]+splitdate[1]+splitdate[0]
'20042002'

Итак, я бы посмотрел два места:

  1. Какой формат вы получаете от self.request.get ('startdate') и храните в DateToPass?
  2. Вы не показали нам код, в котором вы храните сортировку. Это сломано?
1 голос
/ 07 мая 2010

Если проблема real преобразовывает строку во время, как вы указали, то изучили ли вы time.strptime?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...