[issue1083] Confusing error message when dividing timedelta using /

2010-06-05 Thread Alexander Belopolsky

Alexander Belopolsky belopol...@users.sourceforge.net added the comment:

Closing as duplicate of issue1289118.  Division of timedelta by integer is 
supported in py3k since r81625.

--
nosy: +belopolsky -Alexander.Belopolsky
resolution:  - duplicate
status: open - closed
superseder:  - timedelta multiply and divide by floating point

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-05-20 Thread Skip Montanaro

Changes by Skip Montanaro s...@pobox.com:


--
nosy:  -skip.montanaro

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-04-20 Thread Alexander Belopolsky

Alexander Belopolsky alexander.belopol...@gmail.com added the comment:

This is certainly not a bug, so I don't think targeting 2.7 is appropriate.  I 
have explained in a comment on issue2706 (see msg75917) why I believe true 
division of timedelta by int should not be supported.  In short, true division 
of timedelta by int is supposed to return fractional number of microseconds, 
but python lacks a type that can represent it.

--
nosy: +Alexander.Belopolsky

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-04-20 Thread Mark Dickinson

Mark Dickinson dicki...@gmail.com added the comment:

I think it's fine to do the division and round the result to the nearest whole 
number of microseconds.  I don't see any good reason for disallowing timedelta 
/ int (or even timedelta / float).

--
nosy: +mark.dickinson

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-04-20 Thread Mark Dickinson

Changes by Mark Dickinson dicki...@gmail.com:


--
type: behavior - feature request
versions: +Python 3.2 -Python 2.7, Python 3.0

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-04-20 Thread Skip Montanaro

Skip Montanaro s...@pobox.com added the comment:

Mark I think it's fine to do the division and round the result to the
Mark nearest whole number of microseconds.

Right.  Just think of a timedelta as a floating point number of seconds with
very limited precision (1e-6 seconds).

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-03-31 Thread Miki Tebeka

Miki Tebeka miki.teb...@gmail.com added the comment:

It's marked on 2.7 due to the following (this is svn 79528)

 from datetime import timedelta
 d = timedelta(1)
 d / 2
datetime.timedelta(0, 43200)
 d // 2
datetime.timedelta(0, 43200)
 from __future__ import division
 d / 2
Traceback (most recent call last):
  File stdin, line 1, in module
TypeError: unsupported operand type(s) for /: 'datetime.timedelta' and 'int'


--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-03-30 Thread Shashwat Anand

Shashwat Anand anand.shash...@gmail.com added the comment:

I do not understand why python2.7 is marked in Version tag ?

I reproduced the error on 3.1 but no isues on 2.7

06:39:30 l0nwlf-MBP:data $ python2.7
Python 2.7a4+ (trunk:78750, Mar  7 2010, 08:09:00) 
[GCC 4.2.1 (Apple Inc. build 5646) (dot 1)] on darwin
Type help, copyright, credits or license for more information.
 import datetime
 d = datetime.timedelta(1)
 d / 2
datetime.timedelta(0, 43200)
 d // 2
datetime.timedelta(0, 43200)
 

06:41:13 l0nwlf-MBP:data $ python3.1
Python 3.1.1 (r311:74480, Mar 21 2010, 20:21:46) 
[GCC 4.2.1 (Apple Inc. build 5646) (dot 1)] on darwin
Type help, copyright, credits or license for more information.
 import datetime
 d = datetime.timedelta(1)
 d / 2
Traceback (most recent call last):
  File stdin, line 1, in module
TypeError: unsupported operand type(s) for /: 'datetime.timedelta' and 'int'
 d // 2
datetime.timedelta(0, 43200)


--
nosy: +l0nwlf

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2010-03-18 Thread Miki Tebeka

Miki Tebeka miki.teb...@gmail.com added the comment:

I see the same problem when from __future__ import division on the 2.x 
series. Seem like the timedelta objects is missing the __truediv__ method.

--
nosy: +tebeka
versions: +Python 2.7

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2008-11-20 Thread webograph

Changes by webograph [EMAIL PROTECTED]:


--
nosy: +webograph

___
Python tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2008-11-10 Thread STINNER Victor

STINNER Victor [EMAIL PROTECTED] added the comment:

The current behaviour is consistent with the integer divison:
 21 // 10
2
 timedelta(microseconds=20) // 10
datetime.timedelta(0, 0, 2)

Whereas int/int gives float:
 21 / 10
2.1001
 timedelta(microseconds=20) / 1
...
TypeError: unsupported operand type(s) for /: ...

Now in the real world, it's hard to understand that the operator // 
should be used instead of /. So timedelta()/int might be an alias to 
timedelta()//int.

--
nosy: +haypo

___
Python tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2007-11-21 Thread Christian Heimes

Changes by Christian Heimes:


--
keywords: +patch
Added file: http://bugs.python.org/file8792/py3k_datetime_1083.patch

__
Tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2007-09-18 Thread Sean Reifschneider

Changes by Sean Reifschneider:


--
priority:  - normal

__
Tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2007-09-13 Thread Brett Cannon

Changes by Brett Cannon:


--
keywords: +py3k
versions: +Python 3.0

__
Tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2007-09-13 Thread Brett Cannon

Brett Cannon added the comment:

If you set nb_true_div on timedelta objects to delta_divide (just like
nb_floor_div) you won't have this problem as the division will just
work.  Otherwise there is no other good way as if the divisor doesn't
work you need to return NotImplemented, which then tries the right-hand
object which fails, and 'object' returns the TypeError.  Best you could
do is a warning or something.  

But it might make sense to only set it on nb_true_div as the division
does not round anything.

--
nosy: +brett.cannon

__
Tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1083] Confusing error message when dividing timedelta using /

2007-09-01 Thread Skip Montanaro

New submission from Skip Montanaro:

I discovered the hard way today that this won't work:

 import datetime
 d = datetime.timedelta(1)
 d / 2
Traceback (most recent call last):
  File stdin, line 1, in module
TypeError: unsupported operand type(s) for /: 'datetime.timedelta' and 'int'

The error message is misleading, because in fact timedelta
objects *do* support division by ints, just not with the
/ operator:

 d // 2
datetime.timedelta(0, 43200)

Is there some way the error message can be improved,
perhaps by identifying the denominator as effectively
a float?

--
components: Interpreter Core
messages: 55566
nosy: skip.montanaro
severity: normal
status: open
title: Confusing error message when dividing timedelta using /
type: behavior

__
Tracker [EMAIL PROTECTED]
http://bugs.python.org/issue1083
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com