Processing Math: Done
No jsMath TeX fonts found -- using unicode fonts instead.
This may be slow and might not print well.
Use the jsMath control panel to get additional information.
jsMath Control PanelHide this Message


jsMath
Differences between revisions 1 and 2
Revision 1 as of 2019-10-31 05:53:22
Size: 727
Editor: vdelecroix
Comment:
Revision 2 as of 2019-10-31 05:53:55
Size: 757
Editor: vdelecroix
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
sage: type(range(5)) sage-8.9: type(range(5))
Line 15: Line 15:
{{{ {{{#!highlight python
Line 20: Line 20:
sage: range(5)[1::2] sage-9.0: range(5)[1::2]
Line 22: Line 22:
sage: type(range(5)) sage-9.0: type(range(5))

Warning:

Starting from version 9.0, the default distributed version of Sage is using Python 3. See Python3-Switch for more information.

Main caveat

range and xrange

In Python range is a function that return a list.

Toggle line numbers
   1 sage-8.9: range(5)
   2 [0, 1, 2, 3, 4]
   3 sage-8.9: type(range(5))
   4 <type 'list'>

In Python 3, range is an object that somehow behave as a list (ie elements can still be acessed with square bracket, it has a length, etc) but it is not a list.

Toggle line numbers
   1 sage-9.0: range(5)
   2 range(0, 5)
   3 sage-9.0: range(5)[2]
   4 2
   5 sage-9.0: range(5)[1::2]
   6 range(1, 5, 2)
   7 sage-9.0: type(range(5))
   8 <class 'range'>

The iterator xrange is no longer valid in Python 3.

Python3-user (last edited 2020-01-02 08:29:00 by chapoton)