Jump to content
  • Advertisement
Sign in to follow this  
  • entries
    73
  • comments
    131
  • views
    55076

Python #2

Sign in to follow this  
okonomiyaki

242 views

First off, for the extra 10 points towards this project, I'm documenting that I read this article: http://www.linuxjournal.com/article/3882.
I can directly identify with this guy because out of all the scripting languages, I probably know Perl the best. And I am well aware of how flexible it is- way too flexible. It would take way too much time to keep Perl code in a large project consistent, and even more time learning the best/fastest way to do things since many things can be done different ways. Even in the short time I've been using Python, I can tell that I'll have the same sentiment as this guy. Without even knowing the language, I wrote a small script that hit the internet every 5 minutes so that I don't have to always logon to my college's network when I come back to my computer. I think it worked on the first run.

Anyway, back to what I've been doing.

I've been reading information about everything except the language of Python itself. I don't feel the need to know everything about the interpreter, how to specify source code encoding, etc. But it's nice to get a general feeling about the environment. I was especially interested in how to deal with script files instead of just entering commands interactively.

It seems pretty easy to write code in a file and simply execute the file, as the OS runs it through the python interpreter for you. I can't figure out how to run a file from within the interpreter though. I bet that you can't run a script from within the interpreter, but you can import a module that you built. Or at least import some functions defined in a file. I don't know, honestly I don't know anything abot Python yet so I'm not sure how modules and functions work in it yet.

I'll worry about those problems later. Lets learn Python.

I don't really know how to start besides just listing the initial observations about Python's syntax:

- Only single-line comments are allowed, and a comment is specified with "#"

- It doesn't use any characters to specify the end-of-line or nesting hierarchies. The columns are signficant in Python. Nesting is specified with indentation, and end-of-line character actually specifies the end of the line.

- Control statements such as 'if' or 'while' use the ':' character to signify the end of the test clause and beginning of the loop. For example:

if x < 0:
print "X is less than 0."


- The 'for' statement uses a general iteration instead of forcing the developer to specify temporary variables and how to iterate over the sequence. Example:

a = ['a', 'b', 'c']
for x in a:
print a

This makes it very easy to iterate over arrays or list structures.

- Slicing is something I'll have to look into deeper. There's some strange syntax with it and it seems very powerful. Maybe I'll focus my next post on that.


I also have some observations about types.

- You don't have to declare variables

- Python supports integer and floating point, as well as implicit casting in mixed expressions (integers are converted to floating point).

- Complex numbers are also supported. Imaginary numbers are written with the suffix 'j' or 'J'. You can form a complex number by using (r+ij) format or by calling the function complex(r,i).

- Assignment is given with the "=" operator

- Strings are very easy in Python. They can be enclosed either in single quote or double quotes. You can easily do multi-line strings by enclosing the whole string in 3 single/double quotes (''' or """). You can even multiply strings, so that "a" * 5 would become "aaaaa". I think that is extremely interesting. Obviously concatenating and slicing strings are easy as well. There are a lot of other things that you can do with strings as well.



That's it for now. Just gotta get the basics down first.
Sign in to follow this  


1 Comment


Recommended Comments

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!