SlideShare uma empresa Scribd logo
1 de 3
Baixar para ler offline
Requerimientos Mínimos
       El unico requerimiento para realizar este curso es manejar algún lenguaje de
Programación aunque este curso se tomara como lenguaje Python, por cuestiones varias,
principalmente evitar problemas con las diferentes versiones las version de python
recomendada es la 2.6.x, omito la version 3.0 por encontrarse en desarrollo y no estar
adoptada como estandar y la version 2.7 esta en alfa todavia.


Requerimientos Opcionales
   -   Conocimientos sobre matemática y física
   -   Saber manejar alguna herramienta de dibujo tales como PhotoShop, Gimp, etc.


Objetivos del Curso
   -   Aprender los conceptos necesarios sobre el desarrollo de Juegos
   -   Aprender a manejarse en un Espacio de trabajo
   -   Crear un Video Juego Basándose el la Programación orientada a Objectos
   -   Aprender a Usar la Librería PyGame
   -   Conocer los conceptos basicos sobre Inteligencia Artificial Aplicada a los Videos Juegos

Creando Nuestro Espacio de Trabajo
        Lo primero que debes aprender al empezar un proyecto medianamente grande
es ser organizado, y créeme: cuesta mucho aprender a serlo. Yo te puedo dar algunos
consejos, no hay problema, pero tú debes continuar y hacer del orden tu forma de vivir por lo
menos en la programación porque ante todo te permitirá mantener en un lugar seguro todos
los activos de tu proyecto, fáciles de ubicar, fáciles de rehusar, fáciles de arreglar, en general,
fáciles de mantener.

       Estos algunos de los pasos que yo te recomiendo y que también seguiré en mi
proyecto de juego, así también estarán ubicados los códigos y encabezados de mi
proyecto. Esta organización se puede dar como una especie de árbol comúnmente
conocido como directorio. Por ejemplo,




        El directorio raíz de nuestro proyecto puede estar en cualquier parte de nuestro disco
duro o disco de red. Además dentro del directorio códigos puede considerarse una sub-
clasificación entre las versiones de nuestro proyecto, por ejemplo la versión 0.1, versión 0.2 ,
etc.

       Otra recomendación muy útil y no solo para programar juegos es saber manejar algun
sistema de control de versión o CVS tales como Mercurial o Baazar, lo cual nos ayudara tanto
en el desarrollo de Juegos como de proyectos de desarrollo de Software, sobre la metodologia
de desarrollo hay varias, yo no me centrare en ninguna


Estableciendo un estandar en el desarrollo
       Es bueno siempre establecer un estándar a través del desarrollo, esto quiere
decir que se debe explicitar cuales son los formatos de archivo, cuales son las
extensiones de cada tipo, cuales son las bibliotecas que se usarán, cuales son las
opciones de compilación, que no se permitirá, etc.

       Todo esto sirve cuando se trabaja con muchas personas, un grupo de programadores
sobre un mismo proyecto. Como hacer que un programador no se intrometa en mi código y
como yo no me intrometo en su código o en la parte del proyecto que el está actualmente
desarrollando.

      En Internet hay muy buenos artículos sobre como comentar, indentar y
documentar nuestro código, nuestras clases o en un futuro nuestras propias bibliotecas
de desarrollo.


Estableciendo los requerimientos de nuestro proyecto
       Antes de empezar a escribir código es necesario establecer que es lo que queremos
hacer, A simple vista puede parecer una pregunta sencilla, pero muchos de los que han
programado y están empezando recién a crear su juego se encuentran ante un gran abanico
de posibilidades de desarrollo de entre las cuales son muy pocas las que parecen desechables,
es decir, queremos que nuestro juego tenga todas las características, todos los modos de
juego, todos géneros, ocupe todos lo periféricos, etc. Sería mucho mejor establecer un
objetivo final, lo mas simple es crear bocetos de lo que queremos que nuestro juego haga.


Convenciones sobre el Codigo Fuente
      En si esto se refiere a la manera de escribir codigo fuente, en este curso se usaran
generalmente las convenciones para escritura de codigo fuente en Python. Algunas de ellas
son:

Formateo de Código
Identacion:
      Usar 4 espacios, nunca mesclar tabulaciones con espacios.

Tamaño maximo de linea:
       Limita todas las líneas de codigo a un máximo de 79 caracteres, las de documentacion a
72 caracteres. La forma preferida de dividir líneas largas es utilizar característica de Python de
continuar las líneas de forma implícita dentro de paréntesis, otra forma mas elegantes es usar
una barra invertida. Asegurate de indentar la línea siguiente de forma apropiada. Algunos
ejemplos:

class Rectangle(Blob):
      def __init__(self, width, height,
                  color='black', emphasis=None, highlight=0):

              if width == 0 and height == 0 and 
                          color == 'red' and emphasis == 'strong' or
highlight > 100:
                           raise ValueError("sorry, you lose")

                  if width == 0 and height == 0 and (color == 'red' or
                              emphasis is None):

                           raise ValueError("I don't think so")

                  Blob.__init__(self, width, height,
                              color, emphasis, highlight)


Líneas en blanco:
       Separa las funciones no anidadas y las definiciones de clases con dos líneas en blanco.
Las definiciones de métodos dentro de una misma clase se separan con una línea en blanco.

Codificación de Caracteres:
       El código de la distribución base de Python siempre debería utilizar las codificaciones
ASCII o Latin-1 (también conocida como ISO-8859-1). Para Python 3.0 y superiores, se
recomienda UTF-8 en lugar de Latin-1.

Comentarios:
       Los comentarios que contradicen el código son peores que no tener ningún comentario.
¡Manten siempre como prioridad el mantener los comentarios actualizados cuando cambies el
código!

        Los comentarios deberían ser frases completas. Si un comentario es una frase o
sentencia, la primera palabra debería estar en mayúsculas, a menos que sea un
identificador que comience con una letra en minúsculas (¡nunca alteres el identificador
sustituyendo mayúsculas o minúsculas!).

       Si un comentario es corto, se puede omitir el punto al final. Los comentarios de bloque
generalmente consisten en uno o más párrafos construidos con frases completas, y cada frase
debería terminar con un punto.

Nota: esto es un pequeño resumen de la guía de estilo de código, Para mas info véase:

[1]   PEP 7, Guía de Estilo para Código C, Guido van Rossum
[2]   http://www.python.org/doc/essays/styleguide.html
[3]   PEP 257, Convenciones para Cadenas de Documentación, Goodger, Guido van Rossum
[4]   http://www.wikipedia.com/wiki/CamelCase
[5]   Guía de estilo de GNU Mailman de Barry http://barry.warsaw.us/software/STYLEGUIDE.txt
[6]   PEP 20, El Zen de Python
[7]   PEP 328, Imports: Multi-Line and Absolute/Relative

Mais conteúdo relacionado

Mais procurados

Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLkdeespana
 
Programación con Pygame VIII
Programación con Pygame VIIIProgramación con Pygame VIII
Programación con Pygame VIIIFernando Salamero
 
Programación de Videojuegos con Python y Pilas (VII)
Programación de Videojuegos con Python y Pilas (VII)Programación de Videojuegos con Python y Pilas (VII)
Programación de Videojuegos con Python y Pilas (VII)Fernando Salamero
 
Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Fernando Salamero
 
Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Fernando Salamero
 
Action s cript 3
Action s cript 3Action s cript 3
Action s cript 3krencytah
 
Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Fernando Salamero
 
Pasos para crear un videojuego power ponit
Pasos para crear un videojuego power ponitPasos para crear un videojuego power ponit
Pasos para crear un videojuego power ponittatiana meneses
 
¿Porqué Python? ...y Django
¿Porqué Python? ...y Django¿Porqué Python? ...y Django
¿Porqué Python? ...y DjangoAntonio Ognio
 
Xna game studio presentación 01
Xna game studio   presentación 01Xna game studio   presentación 01
Xna game studio presentación 01Juan Cardona
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02Juan Cardona
 
Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Fernando Salamero
 
Manual de Practicas de Open GL con Dev C++
Manual de Practicas de Open GL con Dev C++Manual de Practicas de Open GL con Dev C++
Manual de Practicas de Open GL con Dev C++Alincita Simon
 

Mais procurados (20)

Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGL
 
Programación con Pygame IX
Programación con Pygame IXProgramación con Pygame IX
Programación con Pygame IX
 
Programación con Pygame V
Programación con Pygame VProgramación con Pygame V
Programación con Pygame V
 
Programación con Pygame VIII
Programación con Pygame VIIIProgramación con Pygame VIII
Programación con Pygame VIII
 
Programación con Pygame I
Programación con Pygame IProgramación con Pygame I
Programación con Pygame I
 
Programación con Pygame VI
Programación con Pygame VIProgramación con Pygame VI
Programación con Pygame VI
 
Aventura
AventuraAventura
Aventura
 
Programación con Pygame IV
Programación con Pygame IVProgramación con Pygame IV
Programación con Pygame IV
 
Programación de Videojuegos con Python y Pilas (VII)
Programación de Videojuegos con Python y Pilas (VII)Programación de Videojuegos con Python y Pilas (VII)
Programación de Videojuegos con Python y Pilas (VII)
 
Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)Programación de Videojuegos con Python y Pilas (X)
Programación de Videojuegos con Python y Pilas (X)
 
Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)Programación de Videojuegos con Python y Pilas (IX)
Programación de Videojuegos con Python y Pilas (IX)
 
Action s cript 3
Action s cript 3Action s cript 3
Action s cript 3
 
Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)Programación de Videojuegos con Python y Pilas (VI)
Programación de Videojuegos con Python y Pilas (VI)
 
Primeros Pasos en PyQt4
Primeros Pasos en PyQt4Primeros Pasos en PyQt4
Primeros Pasos en PyQt4
 
Pasos para crear un videojuego power ponit
Pasos para crear un videojuego power ponitPasos para crear un videojuego power ponit
Pasos para crear un videojuego power ponit
 
¿Porqué Python? ...y Django
¿Porqué Python? ...y Django¿Porqué Python? ...y Django
¿Porqué Python? ...y Django
 
Xna game studio presentación 01
Xna game studio   presentación 01Xna game studio   presentación 01
Xna game studio presentación 01
 
Xna game studio presentación 02
Xna game studio   presentación 02Xna game studio   presentación 02
Xna game studio presentación 02
 
Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)Programación de Videojuegos con Python y Pilas (VIII)
Programación de Videojuegos con Python y Pilas (VIII)
 
Manual de Practicas de Open GL con Dev C++
Manual de Practicas de Open GL con Dev C++Manual de Practicas de Open GL con Dev C++
Manual de Practicas de Open GL con Dev C++
 

Destaque

Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Fernando Salamero
 
(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la FísicaFernando Salamero
 
Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Fernando Salamero
 
Curso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IACurso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IARicardo Daniel Quiroga
 
Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Fernando Salamero
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Fernando Salamero
 

Destaque (9)

Python básico II
Python básico IIPython básico II
Python básico II
 
Intro Pygame Capitulo 6
Intro Pygame Capitulo 6Intro Pygame Capitulo 6
Intro Pygame Capitulo 6
 
Pythonic Math
Pythonic MathPythonic Math
Pythonic Math
 
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
Taller de Pilas Engine, un motor de juegos en Python - PyConES 2014
 
(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física(Sin anotaciones) - En busca de la Física
(Sin anotaciones) - En busca de la Física
 
Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)Programación de Videojuegos con Python y Pilas (III)
Programación de Videojuegos con Python y Pilas (III)
 
Curso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IACurso Programacion de Juego Introducion IA
Curso Programacion de Juego Introducion IA
 
Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)Programación de Videojuegos con Python y Pilas (I)
Programación de Videojuegos con Python y Pilas (I)
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)
 

Semelhante a Intro PyGame Capitulo 0

/Media/tom nissim/cursocpp
/Media/tom nissim/cursocpp/Media/tom nissim/cursocpp
/Media/tom nissim/cursocppTom Zambrano
 
Curso de programacion en c++ prev
Curso de programacion en c++ prevCurso de programacion en c++ prev
Curso de programacion en c++ prevjtk1
 
2154086 curso-c-c-con-clase
2154086 curso-c-c-con-clase2154086 curso-c-c-con-clase
2154086 curso-c-c-con-claseEdgar Rodriguez
 
Cursocpp
CursocppCursocpp
Cursocppzotek
 
Guía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores webGuía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores webJuan Victor Minaya León
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxjgs07
 
Moviles
MovilesMoviles
MovilesUB05
 
Giseproi curso de programación - sesión 7 - reglas de codificación
Giseproi   curso de programación - sesión 7 - reglas de codificaciónGiseproi   curso de programación - sesión 7 - reglas de codificación
Giseproi curso de programación - sesión 7 - reglas de codificacióngiseproi
 
Historia de c++
Historia de c++Historia de c++
Historia de c++edwin562
 
01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptxDyllanBastidas
 
3 Conceptos progamacion-tema3
3 Conceptos progamacion-tema33 Conceptos progamacion-tema3
3 Conceptos progamacion-tema3Elba Sepúlveda
 

Semelhante a Intro PyGame Capitulo 0 (20)

Manual de-c-dev
Manual de-c-devManual de-c-dev
Manual de-c-dev
 
Manual C++ 3ra parte
Manual C++ 3ra parteManual C++ 3ra parte
Manual C++ 3ra parte
 
/Media/tom nissim/cursocpp
/Media/tom nissim/cursocpp/Media/tom nissim/cursocpp
/Media/tom nissim/cursocpp
 
Cursocpp
CursocppCursocpp
Cursocpp
 
Lenguaje c nardy y daniela
Lenguaje c nardy y danielaLenguaje c nardy y daniela
Lenguaje c nardy y daniela
 
Curso de programacion en c++ prev
Curso de programacion en c++ prevCurso de programacion en c++ prev
Curso de programacion en c++ prev
 
2154086 curso-c-c-con-clase
2154086 curso-c-c-con-clase2154086 curso-c-c-con-clase
2154086 curso-c-c-con-clase
 
Cursocpp
CursocppCursocpp
Cursocpp
 
Guía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores webGuía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores web
 
Manual c++01
Manual c++01Manual c++01
Manual c++01
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptx
 
Moviles
MovilesMoviles
Moviles
 
Moviles
MovilesMoviles
Moviles
 
tutorial de c++
tutorial de c++tutorial de c++
tutorial de c++
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
Giseproi curso de programación - sesión 7 - reglas de codificación
Giseproi   curso de programación - sesión 7 - reglas de codificaciónGiseproi   curso de programación - sesión 7 - reglas de codificación
Giseproi curso de programación - sesión 7 - reglas de codificación
 
Historia de c++
Historia de c++Historia de c++
Historia de c++
 
Tutorial de Python
Tutorial de PythonTutorial de Python
Tutorial de Python
 
01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx
 
3 Conceptos progamacion-tema3
3 Conceptos progamacion-tema33 Conceptos progamacion-tema3
3 Conceptos progamacion-tema3
 

Intro PyGame Capitulo 0

  • 1. Requerimientos Mínimos El unico requerimiento para realizar este curso es manejar algún lenguaje de Programación aunque este curso se tomara como lenguaje Python, por cuestiones varias, principalmente evitar problemas con las diferentes versiones las version de python recomendada es la 2.6.x, omito la version 3.0 por encontrarse en desarrollo y no estar adoptada como estandar y la version 2.7 esta en alfa todavia. Requerimientos Opcionales - Conocimientos sobre matemática y física - Saber manejar alguna herramienta de dibujo tales como PhotoShop, Gimp, etc. Objetivos del Curso - Aprender los conceptos necesarios sobre el desarrollo de Juegos - Aprender a manejarse en un Espacio de trabajo - Crear un Video Juego Basándose el la Programación orientada a Objectos - Aprender a Usar la Librería PyGame - Conocer los conceptos basicos sobre Inteligencia Artificial Aplicada a los Videos Juegos Creando Nuestro Espacio de Trabajo Lo primero que debes aprender al empezar un proyecto medianamente grande es ser organizado, y créeme: cuesta mucho aprender a serlo. Yo te puedo dar algunos consejos, no hay problema, pero tú debes continuar y hacer del orden tu forma de vivir por lo menos en la programación porque ante todo te permitirá mantener en un lugar seguro todos los activos de tu proyecto, fáciles de ubicar, fáciles de rehusar, fáciles de arreglar, en general, fáciles de mantener. Estos algunos de los pasos que yo te recomiendo y que también seguiré en mi proyecto de juego, así también estarán ubicados los códigos y encabezados de mi proyecto. Esta organización se puede dar como una especie de árbol comúnmente conocido como directorio. Por ejemplo, El directorio raíz de nuestro proyecto puede estar en cualquier parte de nuestro disco duro o disco de red. Además dentro del directorio códigos puede considerarse una sub- clasificación entre las versiones de nuestro proyecto, por ejemplo la versión 0.1, versión 0.2 ,
  • 2. etc. Otra recomendación muy útil y no solo para programar juegos es saber manejar algun sistema de control de versión o CVS tales como Mercurial o Baazar, lo cual nos ayudara tanto en el desarrollo de Juegos como de proyectos de desarrollo de Software, sobre la metodologia de desarrollo hay varias, yo no me centrare en ninguna Estableciendo un estandar en el desarrollo Es bueno siempre establecer un estándar a través del desarrollo, esto quiere decir que se debe explicitar cuales son los formatos de archivo, cuales son las extensiones de cada tipo, cuales son las bibliotecas que se usarán, cuales son las opciones de compilación, que no se permitirá, etc. Todo esto sirve cuando se trabaja con muchas personas, un grupo de programadores sobre un mismo proyecto. Como hacer que un programador no se intrometa en mi código y como yo no me intrometo en su código o en la parte del proyecto que el está actualmente desarrollando. En Internet hay muy buenos artículos sobre como comentar, indentar y documentar nuestro código, nuestras clases o en un futuro nuestras propias bibliotecas de desarrollo. Estableciendo los requerimientos de nuestro proyecto Antes de empezar a escribir código es necesario establecer que es lo que queremos hacer, A simple vista puede parecer una pregunta sencilla, pero muchos de los que han programado y están empezando recién a crear su juego se encuentran ante un gran abanico de posibilidades de desarrollo de entre las cuales son muy pocas las que parecen desechables, es decir, queremos que nuestro juego tenga todas las características, todos los modos de juego, todos géneros, ocupe todos lo periféricos, etc. Sería mucho mejor establecer un objetivo final, lo mas simple es crear bocetos de lo que queremos que nuestro juego haga. Convenciones sobre el Codigo Fuente En si esto se refiere a la manera de escribir codigo fuente, en este curso se usaran generalmente las convenciones para escritura de codigo fuente en Python. Algunas de ellas son: Formateo de Código Identacion: Usar 4 espacios, nunca mesclar tabulaciones con espacios. Tamaño maximo de linea: Limita todas las líneas de codigo a un máximo de 79 caracteres, las de documentacion a 72 caracteres. La forma preferida de dividir líneas largas es utilizar característica de Python de continuar las líneas de forma implícita dentro de paréntesis, otra forma mas elegantes es usar una barra invertida. Asegurate de indentar la línea siguiente de forma apropiada. Algunos ejemplos: class Rectangle(Blob): def __init__(self, width, height, color='black', emphasis=None, highlight=0): if width == 0 and height == 0 and color == 'red' and emphasis == 'strong' or
  • 3. highlight > 100: raise ValueError("sorry, you lose") if width == 0 and height == 0 and (color == 'red' or emphasis is None): raise ValueError("I don't think so") Blob.__init__(self, width, height, color, emphasis, highlight) Líneas en blanco: Separa las funciones no anidadas y las definiciones de clases con dos líneas en blanco. Las definiciones de métodos dentro de una misma clase se separan con una línea en blanco. Codificación de Caracteres: El código de la distribución base de Python siempre debería utilizar las codificaciones ASCII o Latin-1 (también conocida como ISO-8859-1). Para Python 3.0 y superiores, se recomienda UTF-8 en lugar de Latin-1. Comentarios: Los comentarios que contradicen el código son peores que no tener ningún comentario. ¡Manten siempre como prioridad el mantener los comentarios actualizados cuando cambies el código! Los comentarios deberían ser frases completas. Si un comentario es una frase o sentencia, la primera palabra debería estar en mayúsculas, a menos que sea un identificador que comience con una letra en minúsculas (¡nunca alteres el identificador sustituyendo mayúsculas o minúsculas!). Si un comentario es corto, se puede omitir el punto al final. Los comentarios de bloque generalmente consisten en uno o más párrafos construidos con frases completas, y cada frase debería terminar con un punto. Nota: esto es un pequeño resumen de la guía de estilo de código, Para mas info véase: [1] PEP 7, Guía de Estilo para Código C, Guido van Rossum [2] http://www.python.org/doc/essays/styleguide.html [3] PEP 257, Convenciones para Cadenas de Documentación, Goodger, Guido van Rossum [4] http://www.wikipedia.com/wiki/CamelCase [5] Guía de estilo de GNU Mailman de Barry http://barry.warsaw.us/software/STYLEGUIDE.txt [6] PEP 20, El Zen de Python [7] PEP 328, Imports: Multi-Line and Absolute/Relative