Ask Your Question
3

Learning Python for Sage

asked 2011-09-02 13:40:26 +0200

G-Sage gravatar image

Hi, I'm no expert in Python or Sage, but I want to learn Python specifically to help with Sage. I bought a book on Python programming and I'm trying out some of the stuff in Sage. But, some of it doesn't seem to work. So, I'm wondering... is this because Sage doesn't use Python 3 yet, or are there just some things with Python that don't work in Sage? If it's the second one, how can I know what's going to work and what's not? For example, in the book I have it says I should be able to do:

print("stuff stuff", end = " ")
print("stuff stuff")

and the effect is that instead of ending the print statement with "\n", it ends with a space so the second print statement prints on the same line. But, doing this in Sage 4.7 results in a syntax error, and it appears to not like the =.

Thanks

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
3

answered 2011-09-02 14:11:51 +0200

print("stuff stuff", end = " ") is certainly not valid in Python 2, and Sage is using Python 2, and switching is not going to happen soon.

Actually, print is not a function in Python 2, so it's not that it doesn't like '=', it doesn't like (), etc.

You can see few most common differences between Python versions 2 and 3 explained here: http://docs.python.org/release/3.0.1/...

edit flag offensive delete link more
3

answered 2011-09-02 14:15:40 +0200

kcrisman gravatar image

You might like looking at this book, which is the Python 2.x version of a very popular intro text.

edit flag offensive delete link more

Comments

Now at http://www.diveintopython.net after Mark Pilgrim removed diveintopython.org and most of his online presence.

slelievre gravatar imageslelievre ( 2016-07-20 11:11:08 +0200 )edit
4

answered 2011-09-05 04:11:18 +0200

Simon King gravatar image

Even in Python 2.7, you could import the print function from the future Python:

sage: from __future__ import print_function
sage: print("stuff stuff", end = " ")
stuff stuff sage: print("stuff stuff", end = " \n@\n")
stuff stuff 
@
sage:
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2011-09-02 13:40:26 +0200

Seen: 1,741 times

Last updated: Sep 05 '11